Error message while using if statement

14 vues (au cours des 30 derniers jours)
Noah Wilson
Noah Wilson le 12 Juin 2019
Commenté : dpb le 12 Juin 2019
I am trying to create an if statement that will create a file "Rawdata" in my current directory but I also want it to check if the folder of that name already exists and only create the folder if it does not exist. Then I want to change my directory to that new folder and save a csv file to it.
The code I am using is as follows:
%Making new folder for raw data
fn = fullfile('Rawdata');
if
exist(fn, 'dir')
warning('This folder already exists')
else
mkdir(fn)
end
%Changing directory
cd('Rawdata');
%Writing new csv file to test folder
csvwrite('rawdata.csv',T3);
I am currently getting at error message right at the begining of the if statement saying "Invalid expression. Check for missing or extra characters." and then in the code is it telling me "Parse error. Usage might be invalid MATLAB syntax".
Any suggestions on what I am doing wrong or how to fix it would be greatly appreciated.
  1 commentaire
dpb
dpb le 12 Juin 2019
Other respondent answered the cause for the syntax error; I'll just note that
fn=fullfile('Rawdata');
is a "do nothing" statement as written-- fullfile only does something when given a qualifying path in addition to a filename string. Whether this is the intent or not is not known but is the effect...

Connectez-vous pour commenter.

Réponse acceptée

Prasanth Sikakollu
Prasanth Sikakollu le 12 Juin 2019
Syntax of if conditional:
if expression
statements
else
statements
end
There should be no newline character between 'if' and expression.
The following code should work.
if exist(fn, 'dir') % if expression
warning('This folder already exists') % Statements
else % else
mkdir(fn) %Statements
end

Plus de réponses (0)

Catégories

En savoir plus sur File Operations dans Help Center et File Exchange

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by