【问题标题】:Octave: create .csv files with varying file names stored in a sub folderOctave:创建存储在子文件夹中的具有不同文件名的 .csv 文件
【发布时间】:2016-06-01 00:42:54
【问题描述】:

我有多个包含字符串数据的数组。所有这些都应导出到 .csv 文件中。该文件应保存在子文件夹中。文件名是可变的。

我使用的代码如下:

fpath = ('./Subfolder/');
m_date = inputdlg('Date of measurement [yyyymmdd_exp]');
m_name = inputdlg('Characteristic name of the expteriment');
fformat = ('.csv');

fullstring = strcat(fpath, m_date,'_', m_name, fformat);
dlmwrite(fullstring,measurement); 

但是,我收到一个错误,即 FILE 必须是文件名字符串或数字 FID

什么原因?

最好的 安德烈亚斯

【问题讨论】:

  • 如果您想保存为 CSV,请查看 dlmwrite,并确保首先使用 mkdir 创建父文件夹。并且考虑创建一个极简主义示例来展示您想要做什么以及到目前为止您已经尝试过什么。
  • 您能更具体地说明您的目标或问题吗?您问题中的代码没有任何错误。
  • 感谢 cmets,我尝试更具体一些并实施了一些更改。

标签: matlab csv octave


【解决方案1】:

对于 Matlab 或 Octave,您要求做的事情相当简单。第一部分是创建一个文件名发生变化的文件。最好的方法是连接字符串来构建你想要的。

您可以使用:fullstring = strcat('string1','string2')

或者具体来说:filenameandpath = strcat('./Subfolder/FixedFileName_',fname)

请注意,由于字符串几乎只是字符数组,因此您也可以只使用:

fullstring = ['string1','string2']

现在,如果您想创建 CSV 数据,您首先必须读取文件,可能以某种方式解析数据,然后保存。正如 Andy 上面提到的,您可能只能使用 dlmwrite 来创建输出文件。我们需要查看字符串数据的样本,以了解在 dlmwrite 处理之前是否需要完成更多工作。

【讨论】:

  • 你应该使用 "fullfile" 来连接目录和文件以避免 / vs. \ 路径分隔符的问题
  • 感谢您的帮助。我使用的代码如下: fpath = ('./3_Auswertung/'); m_date = inputdlg('测量日期[yyyymmdd_exp]'); m_name = inputdlg('实验的特征名称'); fformat = ('.csv'); fullstring = strcat(fpath, m_date,'_', m_name, fformat); dlmwrite(全串,测量);但是,我收到一个错误,即 FILE 必须是文件名字符串或数字 FID 是什么原因?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-18
  • 1970-01-01
  • 1970-01-01
  • 2019-06-25
  • 2017-08-12
相关资源
最近更新 更多