【问题标题】:Read hex from file matlab从文件 matlab 中读取十六进制
【发布时间】:2016-11-04 01:43:08
【问题描述】:

我有什么

txt 文件,例如:

D091B
E7E1F
20823
...

我需要什么

读取它们并像 char 一样存储它们,就像 在文件中一样N(不要结多少),每个字符有 5 个字符(5 列)。

我尝试了什么

fichero = fopen('PS.txt','r');
sizeDatos = [[] 5];  % Several Options, read below

resultados=fscanf(fichero, '%s', sizeDatos);  % Here too

fclose(fichero);

我已经尝试使用上面的 sn-p 来读取我的 txt 文件。但是,我没有设法得到它。我得到的最多的是,使用:

sizeDatos = [1 Inf];

所以我把我所有的十六进制字符都放到了一个数组中,没有空格。

如您所见,我尝试了几个 optios 更改 fscanf 大小参数,并尝试在格式链中说明它应该通过使用 \n 来识别新行。他们都没有为我工作。

知道如何获得它吗?我已经阅读了文档中的 fscanf 页面,但它并没有激发我做出任何改变。

【问题讨论】:

    标签: matlab char hex


    【解决方案1】:

    一种可能的解决方案是使用textscan 并将其转换为元胞数组。

    fileId = fopen('PS.txt');
    C = textscan(fileId, '%s');
    

    现在显示你可以使用的单元格的内容

    celldisp(C)
    

    或者您可以将其转换为其他类型。

    使用后不要忘记关闭文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-25
      • 2015-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多