【问题标题】:I/O files matlab输入输出文件 matlab
【发布时间】:2012-02-17 12:58:12
【问题描述】:

我会链接到执行一些命令:

  • 访问不在我当前工作文件夹中的文件夹
  • 列出文件夹的内容
  • 访问文件并读取它以搜索特定字符串

【问题讨论】:

  • 到目前为止你有什么尝试?您对 Matlab 有多少经验?
  • 我从matlab开始,我试着做这个例子
  • 您是否阅读过 Mathworks 在其网站上发布的通常非常好的文档?我认为熟悉用户指南应该是您的第一步。
  • 感谢您的建议,但我在文档中找不到我要查找的内容,有很多命令和用例,而且不是很容易理解。

标签: matlab file-io


【解决方案1】:

如果您在另一个名为 myimage 的文件夹中有一个 jpeg 格式的图像文件和一个名为 mytext 的文本文件,请使用:

prefix_image='myimage';
prefix_data='mytext';
fileformat='.jpg';
dataformat='.txt';
folder='C:\Users\khaled\Documents\MATLAB';

image = imread(strcat(folder,prefix_image,fileformat));

data=textread(strcat(folder,prefix_data,fileformat),'%f');

【讨论】:

    【解决方案2】:

    有很多内置函数:

    试试看:)

    【讨论】:

    • 我想在文件中查找字符串
    【解决方案3】:
    • 您可以打开一个对话框以获取带有uigetdir 的路径
    • dir列出文件夹内容
    • fopen打开文件
    • 使用例如fileread读取文件内容
    • 之后别忘了用fclose关闭文件

    【讨论】:

    • 请问,我如何访问不在我当前目录中的文件夹而不制作 cd... 以及文件夹的完整路径?
    • @lola:您也可以使用相对路径名。例如output = fileread('../some_other_folder/my_file.txt');
    【解决方案4】:

    您可以使用相对文件路径(“..”表示“父目录”)来定位您需要的文件。正如其他人所说,您可以使用 fopen 和 fread 打开文件。这些是 Matlab 从 C 移植的低级文件 i/o 函数。如果您的输入文件格式一致(ascii、固定数量的值列等),那么您可以查看高级函数,如 importdata。例如,要将 CSV 文件导入矩阵,您可以使用:

    myMatrix = importData('../../myFile.csv', ',', 3);
    

    逗号是分隔符,在数据列开始之前有 3 个标题行。使用 importdata 时不需要使用 fopen 或格式说明符,这让生活变得更轻松。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多