How to specify the input folder location and save output in specified folder

21 ビュー (過去 30 日間)
Hi,
I have the following code:
clc;
clear all;
close all;
filename='tool1.xlsx';
[score, M]=xlsread(filename);
M(1,:)=[];
M(:,1)=[];
M(:,3)=[];
score(:,2:3)=[];
filterdata=[M num2cell(score)];
outputfilename=regexp(filename,'.xlsx','split');
outputdatafilename=['output_' outputfilename{1} '.xlsx'];
xlswrite(outputdatafilename,filterdata)
(1) I want to put input data in one folder and save out put in another (specified folder). Pl help how can I do this.
(2) I want to read all '.xlsx' files in a given folder one by one and save corresponding output in another specified folder. Pl also help how can I do this( I have give two tool's data).
Sincerely, Mekala

採用された回答

Guillaume
Guillaume 2016 年 2 月 26 日
編集済み: Guillaume 2016 年 2 月 26 日
Use |fullfile to build paths:
sourcefolder = 'C:\some\folder';
destinationfolder = 'C:\some\other\folder';
[score, M] = xlsread(fullfile(sourcefolder, filename));
%...
xlswrite(fullfile(destinationfolder, outputdatafilename), filterdata);
Use dir to get the content of a folder:
sourcefolder = 'C:\some\folder';
fcontent = dir(fullfile(sourcefolder, '*.xlsx')); %fcontent is a column vector of structures
for file = fcontent'
filename = file.name;
[score, M] = xlsread(fullfile(sourcefolder, filename));
%...
end
By the way than regexp to get the parts of the filename is with fileparts:
[~, outputfilename] = fileparts(filename);
outputdatafilename = sprintf('output_%s.xlsx' outputfilename);
Although in your case, I don't understand why you're removing the '.xlsx' only to add it back on the next line, so you might as well simply do:
outputdatafilename = ['output_' filename];
  3 件のコメント
Guillaume
Guillaume 2016 年 2 月 26 日
Well, you specify it in xlswrite of course. I simply forgot to include it in my example.
Fixed now.
Kanakaiah Jakkula
Kanakaiah Jakkula 2016 年 2 月 26 日
Sir, May I ask one more thing, time format in my output file is different from input file. Can it be fixed?
My input time is :
2015/2/6 23:34:24
2015/2/7 22:34:24
2015/2/8 22:56:24
but in the output it is changed to:
2015/2/6 下午 11:34:24
2015/2/7 下午 10:34:24
2015/2/8 下午 10:56:24
Sincerely,

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeData Import and Analysis についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by