Скопировать файл в Matlab из одного каталога в другой

У меня есть короткий вопрос относительно функции copyfile в MATLAB. В основном я хочу скопировать файл из другого выбранного пользователем каталога/файла в текущий каталог (откуда запускается функция). Я борюсь с тем, как это сделать.

Пока у меня есть:

[jxlfilename,jxlfilepath] = uigetfile({'*.jxl'}, 'Pick a File');
copyfile(????)

Я прочитал справку, которую предлагает MATLAB, но я просто не могу понять это.


person Ethan Moe    schedule 12.02.2015    source источник


Ответы (2)


вы были почти там, как только вы выбрали свой файл, сделайте:

copyfile(strcat(jxlfilepath,jxlfilename))

и если вы не укажете второй аргумент, copyfile скопирует файл в текущую папку, а strcat(jxlfilepath,jxlfilename) создаст строку с путем и именем файла. Или

copyfile(strcat(jxlfilepath,jxlfilename),'newname.jxl')

если вы хотите присвоить файлу новое имя.

person yoh.lej    schedule 12.02.2015

Синтаксис для copyfile следующий:

copyfile(source,destination);

Функция объединения путей и имен файлов — fullfile . Текущий каталог выбирается с помощью .

Вместе это дает вам

[jxlfilename,jxlfilepath] = uigetfile({'*.jxl'}, 'Pick a File');
copyfile(fullfile(jxlfilepath,jxlfilename),'.');
person hbaderts    schedule 12.02.2015