parseStringToMap static method

Map<String, dynamic> parseStringToMap(
  1. String inputString
)

A simple parser method that returns a specific definition of a map object: inputString = {key1=value1, key2=value2, ..., keyN=valueN}

Implementation

static Map<String, dynamic> parseStringToMap(String inputString) {
  Map<String, dynamic> nameValueMap = {};

  if (inputString[0] == "{") {
    inputString = inputString.substring(1);
  }

  if (inputString[inputString.length - 1] == "}") {
    inputString = inputString.substring(0, inputString.length - 1);
  }

  List<String> nameValuePairList = inputString.split(",");

  for (var element in nameValuePairList) {
    List<String> nameValueArray = element.split("=");
    if (nameValueArray.length == 2) {
      nameValueMap.putIfAbsent(
          nameValueArray[0].trim(), () => nameValueArray[1]);
    }
  }

  return nameValueMap;
}