How to save the contents of an external file, located outside of MATLAB project path, in an internal MATLAB variable

3 visualizaciones (últimos 30 días)
Hi, I would like to save the contents of an external file in the variable data. So far, I have this code, and it works:
file = "1.txt";
ffile = fopen(file,"rt");
temp = textscan(ffile,"%s","delimiter","\n");
data = temp{1};
fclose(ffile);
However, the file 1.txt must be in the active MATLAB path. I would like to change the path to
I tried to change the first line to: file = "C:\path1\path2\1.txt", but I get the following errors.
Error using textscan
Invalid file identifier. Use fopen to generate a valid file identifier.
Error in readres (line 6)
temp = textscan(ffile,"%s","delimiter","\n");
Does someone have any suggestion on how to get this to work?
I thank you in advance,
  3 comentarios
Stephen23
Stephen23 el 27 de Mayo de 2021
Editada: Stephen23 el 27 de Mayo de 2021
Get a more informative error message by obtaining the second output of fopen:
P = 'C:\path1\path2';
F = '1.txt';
[fid,msg] = fopen(fullfile(P,F),'rt');
assert(fid>=3,msg)
% your file importing code
fclose(fid)
But in any case, it looks like you should be using readlines:

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Low-Level File I/O en Help Center y File Exchange.

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by