I have a file which contains hex data of the form: '45 2B 30 30 0D 0A 20 20 20 30 2E 30 30 30 30 45'.
I'm trying to get a piece of code which will read the data and convert it from hexadecimal to a character string. I know that each of the pairs of numbers corresponds to a single character (the file shows me the translation, but not in a usable format) that could be alphabetical, numeric, or symbolic. I have so far been unable to locate a script which will properly convert to characters.
I am using the following to read the file into lines and strings for easier consideration.
fid = fopen('file.dat');
A = fread(fid, Inf, 'uint8');
fclose(fid);
Fmt = repmat('%02X ', 1, 16);
Fmt(end) = '*';
S = sprintf(Fmt, A);
C = regexp(S, '*', 'split');
I am not looking to use hex2dec, as this gives numeric returns only.
Sorry, but no, I cannot provide a sample file, though the string at the beginning is a sample from the file.

 Akzeptierte Antwort

Fangjun Jiang
Fangjun Jiang am 20 Jul. 2018

0 Stimmen

try A=importdata('file.dat'), you might get what you want in A.textdata

1 Kommentar

Bob Thompson
Bob Thompson am 20 Jul. 2018
Thanks, it's always nice to know MathWorks thinks of things that I don't.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by