如何将.txt文件转换为matlab中的.csv文件?

问题描述:

如何将txt文件转换为MATLAB的csv文件?下面写的是我编写的代码和一些想法。这并不是很长的代码。如何将.txt文件转换为matlab中的.csv文件?

% All data was approved for publication by the USGS. 
%SampleData 
% Day of Year Date Number Discharge, cfs 
1 37987 4175.512953 
2 37988 2065.641026 
3 37989 1030.974359 
4 37990 674.7589744 
5 37991 519.4717949 
6 37992 426.5333333 
7 37993 389.4974359 
8 37994 355.5692308 
9 37995 359.5025641 
10 37996 558.4461538 

function [ ] = convertTexttoCSV(fileNameTxt, fileNameCSV) 
data = load('fileNameTxt.txt');%only loads numerical values 
end 

我是否还需要在加载后打开并读取txt文件。文本文件有一些不必要的字符串数据,这就是我使用load的原因。以下是我计划使用的内容,但现在我认为这对于这个问题非常重要。

fid1 = fopen('fileNameTxt.txt','r');%read 
fid2 = fopen('fileNameCSV', 'w');%write 
%while ~feof(fid1)%go to the end of the line 
    % textline = fgetl(fid1);%reads line of text 
    %convert to CSV 
    % M = [M;str2num(txtline)];%store line of text in an array 
    %used for space delimited files 
    % M = dlmread('fileNametxt','delimiter',%[rS cS rE cE]) 
+1

不知道你的问题是什么,请使用演示数据和期望的输出 –

+2

'importdata(.txt)' - >'csvwrite(.csv)' – Adriaan

+1

为什么不在bash或cmd中执行? – GameOfThrows

data = importdata('filename.txt'); 
csvwrite('filename.csv',data.data); 

这你想要做什么。 function方式:

function [] = txt2csv(txtfile,csvfile) 
    data = importdata(txtfile); 
    csvwrite(csvfile,data.data); 
end 

我使用data.data因为importdata使用了从文本数据,其被存储在单独的data.textdata的数字数据。

+0

嗨,谢谢我试过这个,它没有工作? – kal

+0

为什么它不起作用?我们无法读懂你的想法,那不是我们的工作。 – rayryeng