File 无法在matlab中打开文件路径存储为字符串的文件

File 无法在matlab中打开文件路径存储为字符串的文件,file,matlab,file-io,File,Matlab,File Io,我试图在matlab中打开一个文件,文件名存储为字符串。我的源代码是 strSensor={'AF3','F7','F3','FC5','T7','P7','O1','O2','P8','T8','FC6','F4','F8','AF4'}; [rowsS,colsS]=size(strSensor); for x=1:colsS str02=strcat(str01,strSensor(x)); str02=strcat(str02,'.txt'); str02

我试图在matlab中打开一个文件,文件名存储为字符串。我的源代码是

strSensor={'AF3','F7','F3','FC5','T7','P7','O1','O2','P8','T8','FC6','F4','F8','AF4'};
[rowsS,colsS]=size(strSensor);
for x=1:colsS
    str02=strcat(str01,strSensor(x));
    str02=strcat(str02,'.txt');
    str02
    fid=fopen(str02,'at');
    fprintf(fid,sumf(col));
end
str01的初始值为

str01='D:\Dropbox\data\';
它由用户给定的值、斜杠(\)和数组的其余部分连接起来,这样我就可以访问文件了

我得到的错误是

Error using fopen
First input must be a file name of type char, or a file identifier of
type double.

Error in sensorprocessing (line 35)
    fid=fopen(str02,'at');
我正在使用Matlab2013a

我打印了str02的值,它是

str02 =  'D:\Dropbox\data\alpha\AF3.txt'
**编辑
我弄明白了为什么数组从末尾开始,循环中没有X,但有colsS。所以这是固定的。文件仍然无法读取。

在连接文件名的循环中,使用括号索引传感器名称,如
strSensor(3)
中所示,这将生成一个包含一个元素的单元数组

strcat
不会抱怨,因为它可以在单元格上运行。然而,这也意味着
strcat
也将返回
str02
作为单元数组。你可以说服自己

>> class(str02)
ans = cell

要真正获取单元格数组的内容,可以使用大括号对其进行索引。如果使用
strSensor{x}
您将处理字符串内容,并且
fopen
将停止抱怨输入类型。

在连接文件名的循环中,您使用括号索引传感器名称,如
strSensor(3)
中所示,这将生成一个包含一个元素的单元格数组

strcat
不会抱怨,因为它可以在单元格上运行。然而,这也意味着
strcat
也将返回
str02
作为单元数组。你可以说服自己

>> class(str02)
ans = cell

要真正获取单元格数组的内容,可以使用大括号对其进行索引。如果使用
strSensor{x}
您将处理字符串内容,并且
fopen
将停止抱怨输入类型。

在连接文件名的循环中,您使用括号索引传感器名称,如
strSensor(3)
中所示,这将生成一个包含一个元素的单元格数组

strcat
不会抱怨,因为它可以在单元格上运行。然而,这也意味着
strcat
也将返回
str02
作为单元数组。你可以说服自己

>> class(str02)
ans = cell

要真正获取单元格数组的内容,可以使用大括号对其进行索引。如果使用
strSensor{x}
您将处理字符串内容,并且
fopen
将停止抱怨输入类型。

在连接文件名的循环中,您使用括号索引传感器名称,如
strSensor(3)
中所示,这将生成一个包含一个元素的单元格数组

strcat
不会抱怨,因为它可以在单元格上运行。然而,这也意味着
strcat
也将返回
str02
作为单元数组。你可以说服自己

>> class(str02)
ans = cell


要真正获取单元格数组的内容,可以使用大括号对其进行索引。如果您使用
strSensor{x}
您将处理字符串内容,并且
fopen
将停止抱怨输入类型。

当您遇到错误时,
str02
的值是多少?您是否尝试打印
str02
?什么是
str01
colsS
值?用更多信息编辑我的帖子,尝试
strSensor{x}
而不是
strSensor(x)
来获取传感器字符串,而不是包含它的单元格元素。@s.bandara感谢它被修复。请将其作为答案键入,以便获得您应得的积分当您收到错误时,
str02
的值是多少?您是否尝试打印
str02
?什么是
str01
colsS
值?用更多信息编辑我的帖子,尝试
strSensor{x}
而不是
strSensor(x)
来获取传感器字符串,而不是包含它的单元格元素。@s.bandara感谢它被修复。请将其作为答案键入,以便获得您应得的积分当您收到错误时,
str02
的值是多少?您是否尝试打印
str02
?什么是
str01
colsS
值?用更多信息编辑我的帖子,尝试
strSensor{x}
而不是
strSensor(x)
来获取传感器字符串,而不是包含它的单元格元素。@s.bandara感谢它被修复。请将其作为答案键入,以便获得您应得的积分当您收到错误时,
str02
的值是多少?您是否尝试打印
str02
?什么是
str01
colsS
值?用更多信息编辑我的帖子,尝试
strSensor{x}
而不是
strSensor(x)
来获取传感器字符串,而不是包含它的单元格元素。@s.bandara感谢它被修复。请键入答案,这样您就可以获得您应得的学分