[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico]
[Índice de assunto]
RE: Caracteres estranhos no SGB
- Subject: RE: Caracteres estranhos no SGB
- From: Jose Coelho de Pina <coelho@ime.usp.br>
- Date: Wed, 19 Mar 2003 09:02:46 -0300
Oi Ivan,
Ivan Bittencourt de Araújo e Silva Neto writes:
> Eu estou usando a funcao gb_save_string, e quando eu dou um save_graph,
> no meu arquivo de saida .gb tem a seguinte mensagem:
>
> * Checksum 660573171
> > WARNING: I had trouble making this file from the given graph!
> >> At least one string character had to be changed to '?'.
> > You should be able to read this file with restore_graph,
> > but the graph you get won't be exactly like the original.
O GraphBase não aceita que alguns campos tenham acentos ou
coisa do tipo. Por exemplo, não podemos dar fazer
v->name = gb_save_string("São Paulo");
Bem, na verdade podemos, o problema acontece quanto salvamos
isto (os caracteres acentuados são substituidos por algum
lixo, tipo '?'). Para coisas desse tipo é que o prof. Zé
Augusto escreveu um gb_save modificado batizado de gb_salva
http://www.ime.usp.br/~coelho/grafos/sgb/exemplos/acentos/
>
> E realmente, quando eu retauro o grafo os caracteres '\t' (tab) e '\n'
> (new line) sao substituidos por interrogacao. Tem como resolver isso?
>
Se você precisa salvar estes caracteres, então você pode
trocar eles por outros caracteres que não estão sendo usados
(fazer um filtro; o gb_salva é um filtro). Coisa do tipo
"trocar '\n' por ';'".
Depois de fazer o restore do grafo pode-se trocar o ';' por '\n'.
> Mais uma coisa: eu defino alguns campos utilitarios como NULL antes de
> salvar o grafo (mais precisamente o campo z.S). Mas quando eu restauro
> nao tem mais o valor NULL onde eu tinha setado antes de salvar o grafo.
> E assim mesmo, o SGB nao salva os valores NULL dos campos utilitarios?
>
Você atribuiu S para o corresponde posição do util_type do
grafo? Coisa do tipo
strcpy(g->util_types,"ZZZZZSZZZZZZZZ");
^
|
ali ---------------------+
O util_type do grafo é que diz o tipo do bicho que está
armazenado em cada um dos campos de utilitários do
grafo. Ele é importanto para salvar e recuperar o grafo.
té +,
coelho