Read in Text File as string Array

38 vues (au cours des 30 derniers jours)
xRobot
xRobot le 19 Nov 2019
Commenté : Ruger28 le 19 Nov 2019
Hello, I have a text file that contains one column of words. I would like to read in the file as a string array of seperated strings so I can index the elements in the array.
Any advice is greatly appecraiated! Thanks!
  2 commentaires
xRobot
xRobot le 19 Nov 2019
Using this, I obtained data as a 1x1 cell in the workspace.
fid = fopen('mylist2.txt');
data = textscan(fid,'%s');
fclose(fid);
Using this, I obtained words5 as a 1x111022 char array in the workspace.
fileID = fopen('mylist.odt','r');
formatSpec = '%s';
words5 = fscanf(fileID,formatSpec);
Ruger28
Ruger28 le 19 Nov 2019
Please see my answer below to see how to use textscan and get strings

Connectez-vous pour commenter.

Réponse acceptée

Ruger28
Ruger28 le 19 Nov 2019
fileName = '<your full file path here>'
% my sample text contains ---> apple, baseball, car, donut, & elephant in single column.
FID = fopen(fileName);
data = textscan(FID,'%s');
fclose(FID);
stringData = string(data{:});
Output:
stringData =
5×1 string array
"apple"
"baseball"
"car"
"donut"
"elephant"
  6 commentaires
xRobot
xRobot le 19 Nov 2019
I got it! I just had to copy and paste the column into notepad as a regular .txt file. Thank you so much!
Ruger28
Ruger28 le 19 Nov 2019
not a problem! try this just for fun.
odtFile = '<full filepath for file';
txtFile = fullfile(fileparts(odtFile),'TextVersion.txt');
copyfile(odtFile,txtFile);
fileName = txtFile;
...
...
<your script>
and then try runing your code. That way, you wont have to copy paste.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by