Azzera filtri
Azzera filtri

Why fscanf return strange character I do not see in notepad?

1 visualizzazione (ultimi 30 giorni)
Hi all,
I have several txt files that look fine in Notepad, but they are full of strange characters from fscanf and I'm wondering why it occurs.
Here my code:
TxtFid=fopen([TxtPath TxtFile]);
Txt=fscanf(TxtFid,'%c');
Here how the a part of the file looks like in notepad:
25,33 de / from 0 à / to 28,6
Here how the same part looks from fscanf:
≤ 25,33 de / from 0 à / to 28,6
Why does it occur? For the coding? May trying several codings solve the problem?
I tried yo change the coding as the following:
TxtFid=fopen([TxtPath TxtFile],[],[],'windows-847');
but Matlab returns:
Error using fopen
Invalid permission.
How may I solve the problem?
Thanks
Cheers
  3 Commenti
pietro
pietro il 9 Mag 2016
From Matlab documentation:
fileID = fopen(filename,permission,machinefmt,encodingIn)
For this reason, I used the function as the following:
TxtFid=fopen([TxtPath TxtFile],[],[],'windows-847');
Walter Roberson
Walter Roberson il 9 Mag 2016
You need to provide valid entries there. Empty entries are not accepted.

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 6 Mag 2016
Use fread() instead.
  1 Commento
pietro
pietro il 9 Mag 2016
It worked. I just used fread in the following way:
Txt=fread(TxtFid);
Txt=char(Txt)';
Why is there so much difference among the two uses?

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Data Import and Export in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by