csvread and dots in filename

2 次查看(过去 30 天)
Cagdas Ozgenc
Cagdas Ozgenc 2013-2-24
Hello,
I know matlab script files don't accept filenames with many dots.
But my problem is different. I am trying to read a text file with csvread, and I get file not found error if the filename contains a dot other than the file extension separator.
I cannot rename these files because these files are generated and appended by another software. Renaming them breaks the updates.
How can I make csvread work?
Thanks
[Merged from duplicate]
I am really in trouble. fopen fails to open if filename contains @ symbol or extra . other than the one before file extension. I have so many files to load with these symbols.
I also tried csvread and dlmread, same problem.
Is there any other way to load files in Matlab?
Thanks

回答(2 个)

Walter Roberson
Walter Roberson 2013-2-24
csvread() is a wrapper around dlmread() which in turn is a wrapper around textscan(). You could use textscan() directly.
  3 个评论
Walter Roberson
Walter Roberson 2013-3-9
Could you give an example?
Also which operating system and MATLAB version are you using?
Cagdas Ozgenc
Cagdas Ozgenc 2013-3-9
编辑:Cagdas Ozgenc 2013-3-9
I am trying on R2011b windows 8.
@AAE-I_INDEX_S&P Custom_ABN AMRO Renewable.csv
AZO_NYSE_Autozone Inc..CSV

请先登录,再进行评论。


per isakson
per isakson 2013-3-9
编辑:per isakson 2013-3-9
This works for me on R2012a 64bit
>> fid = fopen( '@AAE-I_INDEX_S&P Custom_ABN AMRO Renewable.csv', 'r' );
>> cac = textscan( fid, '%[^\n]' )
cac =
{1x1 cell}
>> cac{:}{:}
ans =
?FROM 192.168.7.2:658161? 058 032 ...
>>
and this too
>> fid = fopen( 'AZO_NYSE_Autozone Inc..CSV', 'r' );
>> cac = textscan( fid, '%[^\n]' )
cac =
{1x1 cell}
>> cac{:}{:}
ans =
?FROM 192.168.7.2:658161? 058 032 055 ...
>>
  5 个评论
Walter Roberson
Walter Roberson 2013-3-9
Works for me on R2012a on OS-X Lion.
Cagdas Ozgenc
Cagdas Ozgenc 2013-3-9
Does MATLAB use Visual C++ Redistributable or some other C library? If so maybe I should upgrade the C library without touching Matlab.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Low-Level File I/O 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by