String.replace("\"@", "\"")
или как?
UPDATE
Чтобы предотвратить замену @ внутри строкового значения, вы можете использовать версию регулярного выражения замены . Вы бы искали знак @, которому предшествует ", а не какой-то X, где X - двоеточие (:), за которым следует любое количество пробелов. Вы бы заменили на" снова.
Менее хакерский подход состоял бы в том, чтобы иметь потоковую библиотеку json в виде событий, связанных с содержимым, перехватывать любые события имени элемента объекта, заменять такие имена элементов, которые начинаются с символа @, соответственно, а затем возвращать их обратно в событие поток. Затем этот поток снова будет преобразован в текст JSON. (В настоящее время я работаю над библиотекой, которая предоставляет такую функциональность, но, к сожалению, она еще не опубликована.)
Точно так же вы можете подключить процесс перевода XML в JSON. Переводчик должен будет передавать XML-поток в какие-либо события содержимого XML, которые впоследствии преобразуются в события содержимого JSON, которые затем преобразуются в текст JSON. (Хорошо, вот как я бы это сделал.) Если бы вы могли подключиться по обе стороны от стадии событий JSON, вы могли бы легко перевести конкретные имена членов объекта. Очевидно, что используемая вами библиотека должна была бы обеспечить возможность подключения, хотя бы только путем предложения шагов процесса для отдельного вызова.
(Если вам интересно, «имя члена объекта» - это часть перед: в объекте JSON, «значение» - это часть после него.)