Effacer les filtres
Effacer les filtres

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

5 vues (au cours des 30 derniers jours)
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 commentaires
Hugo
Hugo le 27 Mai 2021
The thread was edited. Thank you for your suggestion.
Stephen23
Stephen23 le 27 Mai 2021
Modifié(e) : Stephen23 le 27 Mai 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:

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Low-Level File I/O dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by