@Nullable
 private static String findProperty(final String propertyName, final String fileContent) {
   String param = propertyName + "=";
   int idx = fileContent.indexOf(param);
   if (idx == -1) {
     param = "<key>" + propertyName + "</key>";
     idx = fileContent.indexOf(param);
     if (idx == -1) return null;
     idx = fileContent.indexOf("<string>", idx);
     if (idx == -1) return null;
     idx += "<string>".length();
     return fixDirName(fileContent.substring(idx, fileContent.indexOf("</string>", idx)), true);
   } else {
     String configDir = "";
     idx += param.length();
     if (fileContent.length() > idx) {
       if (fileContent.charAt(idx) == '"') {
         idx++;
         while ((fileContent.length() > idx)
             && (fileContent.charAt(idx) != '"')
             && (fileContent.charAt(idx) != '\n')
             && (fileContent.charAt(idx) != '\r')) {
           configDir += fileContent.charAt(idx);
           idx++;
         }
       } else {
         while ((fileContent.length() > idx)
             && (!Character.isSpaceChar(fileContent.charAt(idx)))
             && (fileContent.charAt(idx) != '\n')
             && (fileContent.charAt(idx) != '\r')) {
           configDir += fileContent.charAt(idx);
           idx++;
         }
       }
     }
     configDir = fixDirName(configDir, true);
     if (configDir.length() > 0) {
       configDir = (new File(configDir)).getPath();
     }
     return configDir;
   }
 }