Я создал класс, который кодирует объект в формате на 20% меньше, чем json, и он не является двоичным. Теперь я хотел бы положить его куда-нибудь, чтобы люди могли его использовать. Где я должен опубликовать это?
Вот пример объекта, закодированный в JSON:
{"glossary":{"GlossDiv":{"GlossList":{"GlossEntry":{"GlossTerm":"Standard Generalized Markup Language","Abbrev":"ISO 8879:1986","ID":"SGML","GlossDef":{"GlossSeeAlso":["GML","XML"],"para":"A meta-markup language, used to create markup languages such as DocBook."},"Acronym":"SGML","SortAs":"SGML","GlossSee":"markup"}},"title":"S"},"title":"example glossary"}}
И вот оно в моем формате:
glossary{GlossDiv{GlossList{GlossEntry{GlossDef{GlossSeeAlso[GML XML]para"A meta-markup language, used to create markup languages such as DocBook."}GlossTerm"Standard Generalized Markup Language"GlossSee markup ID SGML Acronym SGML Abbrev"ISO 8879:1986"SortAs SGML}}title S}title"example glossary"}
В JSON длина строки равна 360, а в моем формате - 299
(Как видите, мой формат помещает кавычки вокруг идентификатора, только если он содержит пробелы или специальные символы, он может кодировать все, что может JSON)
Вот пример читаемой строки:
JSON:
{
"glossary": {
"title": "example glossary",
"GlossDiv": {
"title": "S",
"GlossList": {
"GlossEntry": {
"ID": "SGML",
"SortAs": "SGML",
"GlossTerm": "Standard Generalized Markup Language",
"Acronym": "SGML",
"Abbrev": "ISO 8879:1986",
"GlossDef": {
"para": "A meta-markup language, used to create markup languages such as DocBook.",
"GlossSeeAlso": ["GML", "XML"]
},
"GlossSee": "markup"
}
}
}
}
}
Мой формат:
"glossary" {
"title" "example glossary"
"GlossDiv" {
"title" "S"
"GlossList" {
"GlossEntry" {
"ID" "SGML"
"SortAs" "SGML"
"GlossTerm" "Standard Generalized Markup Language"
"Acronym" "SGML"
"Abbrev" "ISO 8879:1986"
"GlossDef" {
"para" "A meta-markup language, used to create markup languages such as DocBook."
"GlossSeeAlso" [
"GML"
"XML"
]
}
"GlossSee" "markup"
}
}
}
}
(кавычки необязательны для большинства строк)