@Override protected void toASCII(StringBuilder ascii, int level) { this.indent(ascii, level); ascii.append("\""); //According to https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/PropertyLists/OldStylePlists/OldStylePLists.html //non-ASCII characters are not escaped but simply written into the //file, thus actually violating the ASCII plain text format. //We will escape the string anyway because current Xcode project files (ASCII property lists) also escape their strings. ascii.append(escapeStringForASCII(this.content)); ascii.append("\""); }
@Override protected void toASCIIGnuStep(StringBuilder ascii, int level) { this.indent(ascii, level); ascii.append("\""); ascii.append(escapeStringForASCII(this.content)); ascii.append("\""); }
@Override protected void toASCIIGnuStep(StringBuilder ascii, int level) { this.indent(ascii, level); ascii.append(ASCIIPropertyListParser.DICTIONARY_BEGIN_TOKEN); ascii.append(NEWLINE); String[] keys = this.dict.keySet().toArray(new String[this.dict.size()]); for (String key : keys) { NSObject val = this.objectForKey(key); this.indent(ascii, level + 1); ascii.append('"'); ascii.append(NSString.escapeStringForASCII(key)); ascii.append("\" ="); Class<?> objClass = val.getClass(); if (objClass.equals(NSDictionary.class) || objClass.equals(NSArray.class) || objClass.equals(NSData.class)) { ascii.append(NEWLINE); val.toASCIIGnuStep(ascii, level + 2); } else { ascii.append(' '); val.toASCIIGnuStep(ascii, 0); } ascii.append(ASCIIPropertyListParser.DICTIONARY_ITEM_DELIMITER_TOKEN); ascii.append(NEWLINE); } this.indent(ascii, level); ascii.append(ASCIIPropertyListParser.DICTIONARY_END_TOKEN); } }
@Override protected void toASCII(StringBuilder ascii, int level) { this.indent(ascii, level); ascii.append(ASCIIPropertyListParser.DICTIONARY_BEGIN_TOKEN); ascii.append(NEWLINE); String[] keys = this.allKeys(); for (String key : keys) { NSObject val = this.objectForKey(key); this.indent(ascii, level + 1); ascii.append('"'); ascii.append(NSString.escapeStringForASCII(key)); ascii.append("\" ="); Class<?> objClass = val.getClass(); if (objClass.equals(NSDictionary.class) || objClass.equals(NSArray.class) || objClass.equals(NSData.class)) { ascii.append(NEWLINE); val.toASCII(ascii, level + 2); } else { ascii.append(' '); val.toASCII(ascii, 0); } ascii.append(ASCIIPropertyListParser.DICTIONARY_ITEM_DELIMITER_TOKEN); ascii.append(NEWLINE); } this.indent(ascii, level); ascii.append(ASCIIPropertyListParser.DICTIONARY_END_TOKEN); }