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

17 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Guillaume
Guillaume il 26 Feb 2016
Modificato: Guillaume il 26 Feb 2016
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 Commenti
Guillaume
Guillaume il 26 Feb 2016
Well, you specify it in xlswrite of course. I simply forgot to include it in my example.
Fixed now.
Kanakaiah Jakkula
Kanakaiah Jakkula il 26 Feb 2016
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,

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Data Import and Analysis in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by