Exportar e Importar Sprites(jogos)[DUVIDA SOBRE CONCEITO][Resolvido]

preciso de uma ajuda conceitual em um projetinho meu aqui…
eu estou inicialmente fazendo um editor de sprites,e gostaria de salvar/abrir sprites criados com o meu programa,pra que nao se perca o trabalhor quando se fecha o programa…pensei em algumas coisas:

1)serializar a classe sprite e depois fazer o inverso…:
mas achei isso pouco portavel…fora que se eu mudar alguma coisa na classe já era os saves antigos,e nao da pra editar fora do meu programa…

2)salvar um conjunto de arquivos compactados em tar com o seguinte conteudo:
o image map de onde sai as animações do sprite
um arquivo de texto puro com informações sobre id dos sprites,w,h, espaçamento,fps e etc…
compacta tudo com tar e ja era…fica portavel e da pra editar na mao…

mas ainda sim a segunda opção me parece gambi…vou ter que implementar a api que manipula tar…e o arquivo de texto pode acabar virando uma bagunça…
alguem tem uma ideia menos gambi?
obs: não quero usar gif por ser prorpietario e nao ser possivel manipular as camadas no canvas…

Acredito que a melhor opção é um arquivo zipado mesmo.

E o arquivo de texto não parece tão gambi. Considere-o como se fosse o header do arquivo de sprites.

Ao invés de texto puro, pq não usa um xml?

[quote=ThankChenus]e o arquivo de texto pode acabar virando uma bagunça…
[/quote]
Também sugiro XML. Parece uma boa (inclusive com XMLEncoder/XMLDecoder é possível fazer serialização de objetos em XML; talvez seja a solução).

[quote=ThankChenus]
obs: não quero usar gif por ser prorpietario e nao ser possivel manipular as camadas no canvas…[/quote]
Use PNG e faça a parte de animação/manipulação pelo programa mesmo.

valew as dicas,eu estava meio em divuda de usar ou nao o arquivo zipado,ainda fico com um pé atras nas minhas ideias pois a alguns meses eu era do tipo:
tudo static
tudo em threads
tudo com ArrayList
e tudo e qualquer comportamento em interface…

sabe,aprendo algo novo e acabo exagerando,ainda não me livrei do vicio do ArrayList,e estou trocando ele por HashMaps(6 por meia duzia)
(alias peno no python pela mania de ArrayList)

Vou dar uma olhada no xml,apesar de nao gostar muito,já que a maioria dos programas que usam xml pra configurações possuem muitas variaves e fica meio dificil de eu ler e entender como configurar por falta de comentario no arquivo…e já que eu nao gosto do jeito que fazem seria hipocrisia fazer igual(ou pior)