import an easy file

6 vues (au cours des 30 derniers jours)
Erik Verdijk
Erik Verdijk le 29 Mar 2018
Commenté : Elias Gule le 29 Mar 2018
I know it is a easy question, but I should be extremely grateful if someone give me and answer. I have a string with a complete path. How do I Import this textfile? I know it is stupid, but i shoud thank you 1000 times if you cam help me. I get the message unable to import file.
  4 commentaires
Erik Verdijk
Erik Verdijk le 29 Mar 2018
Modifié(e) : per isakson le 29 Mar 2018
clear all;
close all;
[FileName,PathName] = uigetfile('../*.csv','MultiSelect','off','title','path');
fileID = fopen(FileName);
C = textscan(fileID,'%d%d%d%s%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d','HeaderLines',80,'Delimiter','/t');
fclose(fileID);
Erik Verdijk
Erik Verdijk le 29 Mar 2018
and I get an empty matrix

Connectez-vous pour commenter.

Réponse acceptée

Elias Gule
Elias Gule le 29 Mar 2018
In this code:
[FileName,PathName] = uigetfile('../*.csv','MultiSelect','off','title','path');
FileName is simply the name of the file you selected. So if the file is not located in the present working directory, fopen will not be able to read it. So it will return an fid of -1, which is an invalid file 'pointer'.
What you need is to supply the full path of the file to fopen. So doing this:
fid = fopen(fullfile(PathName,FileName));
will return a valid file 'pointer'.
  3 commentaires
Elias Gule
Elias Gule le 29 Mar 2018
You made a little error.
fid = fopen(fullfile(PathName,FileName)); fileID = fopen(fid);
Is the one that causes the problem.
What you referred to as fileID, is actually what I referred to as fid. So change this line to:
fileID = fopen(fullfile(PathName,FileName));
Elias Gule
Elias Gule le 29 Mar 2018
Please change your delimiter option from "tab" to "\t".

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

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

Community Treasure Hunt

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

Start Hunting!

Translated by