Pagina 1 di 1

Problema caratteri strani in copia e incolla da programmi Java

Inviato: 23 gennaio 2017, 11:10
da fermat
ciao!

ho notato che ogni volta che copio / incollo ddel testo da programmi basati su java (netbeans, sql developer della oracle) su un altro editor (geany, libreoffice) mi escono tutti caratteri strani.
ad esempio:

Codice: Seleziona tutto

��#a#d#d
su netbeans è semplicemente il nome di una funzione che si chiama add.
all'inizio pensavo fosse solo un problema dell'sql developer della oracle.
ma poi mi sono reso conto che netbeans mi da questo problema.
secondo voi dove posso guardare per risolvere questo problema??

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 23 gennaio 2017, 14:12
da TheSaint
Forse dovresti incollare in un editore di testo normale e vedere se ci sono dei caratteri di controllo inclusi. Oppure potrebbe esser un difetto del gestore della clipboard.
Per esempio non mi succede con Arduino IDE a Kate.

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 23 gennaio 2017, 15:49
da fermat
TheSaint ha scritto:Forse dovresti incollare in un editore di testo normale e vedere se ci sono dei caratteri di controllo inclusi. Oppure potrebbe esser un difetto del gestore della clipboard.
Per esempio non mi succede con Arduino IDE a Kate.
ciao!

per editor di testo normale che intendi?
ho provato sia su geany che su libreoffice writer.
stesso identico risultato.

sennò mi era venuto in mente un problema di charset su questi programmi, o sulla jvm...

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 24 gennaio 2017, 9:01
da fermat
mi sono accorto di aver detto una mezza scemenza.
ho provato a copiare questi testi, rispettivamente da netbeans e sql developer:

Codice: Seleziona tutto

public function add
select * from gen_anag;
su geany tutto ok.
se copio direttamente su writer:

Codice: Seleziona tutto

��#p#u#b#l#i#c# #f#u#n#c#t#i#o#n# #a#d#d
��#s#e#l#e#c#t# #*# #f#r#o#m# #g#e#n#_#a#n#a#g#;
se invece copio prima su geany, e poi su writer, non ho problemi.
solo che non posso usare sempre questo trucco purtroppo.
se ad esempio volessi esportare il risultato della query in excel, non potrei fare copia/incolla su libreoffice (e non posso passare per geany).
se sono su windows, non ho questi problemi invece.
possibile un problema di charset su libreoffice??

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 24 gennaio 2017, 10:34
da TheSaint
Potrebbe essere che c'è di mezzo l' Unicode. Questo significa che ogni carattere prende 2 bytes, uno dei programmi non considera l' unicode e ti mette anche il secondo byte dell' unicode come un byte.
Se il problema è con Office, prova a cercare l' abilitazione dell' Unicode.

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 24 gennaio 2017, 11:09
da fermat
allora, netbeans dovrebbe avere già il support a unicode.
cmq ho aggiunto questo parametro in configurazione: -J-Dfile.encoding=UTF-8
non è cambiato nulla.

visto che il problema dovrebbe essere LibreOffice, ho provato a cercare.
ma non sto trovando nulla al riguardo.

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 24 gennaio 2017, 16:34
da zorro62
vedi se ti è utile sto link,magari non lo è.
https://gist.github.com/cryzed/e002e705 ... 9e748c5671

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 24 gennaio 2017, 17:44
da fermat
allora, il charset di default della jvm è UTF-8.
quindi, su questo lato, sto a posto.

però ho guardato la codifica di un file da cui prendo il testo:

Codice: Seleziona tutto

$ file -i query.sql 
query.sql: text/plain; charset=us-ascii
potrebbe essere qui il problema??

@zorro62
quando ho un attimo guardo quel link, che a prima vista non ci ho capito nulla.
grazie!

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 24 gennaio 2017, 19:34
da VenereNera
Salve,
Nell' ipotesi si potrebbe verificare la codifica e poi una coversione, questo per capire se il problema sta lì.
Per esempio, il file originale fosse ''query.sql'' si potrebbe:

Codice: Seleziona tutto

$ file --mime-encoding query.sql
Mettiamo che il risultato sia ''iso-8859-1''
Quindi per la conversione per esempio ''iconv --from-code=iso-8859-1 --to-code=utf-8 /file/origine > /file/destinazione''

Codice: Seleziona tutto

$ iconv --from-code=iso-8859-1 --to-code=utf-8 query.sql > /file/destinazione/nome/che/vuoi
Infine fai tutti i copy/paste e verifichi.

Bye ^_^

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 25 gennaio 2017, 9:01
da fermat
ciao VeneraNera!

allora:

Codice: Seleziona tutto

$ file --mime-encoding query.sql
query.sql: us-ascii
$ iconv --from-code=us-ascii --to-code=utf-8 query.sql > query_1.sql
$ file --mime-encoding query_1.sql
query_1.sql: us-ascii
anche se non ho un risultato tipo "iso-*" ho provato cmq.
alla fine della fiera rimane sempre us-ascii.
mai possibile???

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 25 gennaio 2017, 12:39
da VenereNera
eeh! 'Sta cosa non la sapevo. :P http://www.linuxquestions.org/questions ... -a-705054/

Prova con metodo poco poco pulito:

Codice: Seleziona tutto

$ iconv -f us-ascii -t utf-16 query.sql > query_16.sql
/* Poi */
$ iconv -f utf-16le -t utf-8 query_16.sql > query_8.sql
Bye ^_^

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 25 gennaio 2017, 13:48
da fermat
eseguendo queste operazioni, risulta utf8.

poi lo apro con netbeans, copio e incollo su libreoffice, e si vede cmq male.

a mio modesto parere, il problema è proprio su libreoffice.
solo che non ho trovato nulla da attivare.

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 25 gennaio 2017, 14:35
da VenereNera
Tanto per farci una forchettata di affari tuoi, perché non ci spieghi un po' ciò che stai facendo o l' intento? Magari esistono strade migliori.

Bye ^_^

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 25 gennaio 2017, 14:41
da TheSaint
fermat ha scritto: si vede cmq male.
Vorrei vedere l' esadecimale di quello che hai nella clipboard.
In un qualche modo, astruso, si potrà far eseguire una macro al libreoffice per importare il testo ripulito. Un accenno

Re: Problema caratteri strani in copia e incolla da programmi Java

Inviato: 25 gennaio 2017, 14:46
da fermat
TheSaint ha scritto:
fermat ha scritto: si vede cmq male.
Vorrei vedere l' esadecimale di quello che hai nella clipboard.
In un qualche modo, astruso, si potrà far eseguire una macro al libreoffice per importare il testo ripulito. Un accenno
ho copiato il testo preso da netbeans dentro bless (un editor esadecimale):

Codice: Seleziona tutto

53 45 54 20 46 4F 52 45 49 47 4E 5F 4B 45 59 5F 43 48 45 43 4B 53 20 3D 20 30 3B
per quella macro, adesso vedo di che si tratta.