Azzera filtri
Azzera filtri

ワークスペースにある​変数をfileの名前​に設定したい

37 visualizzazioni (ultimi 30 giorni)
周平
周平 il 21 Ott 2022
Modificato: Atsushi Ueno il 22 Ott 2022
質問失礼します。
uigetfileの関数を用いて取得したファイル名を、新しく作るファイルの名前に入れたいのですが、どのようにしたら良いのでしょうか。
matlabの経験が浅く初歩的な質問ですが回答していただけると嬉しいです。
[file,path] = uigetfile('*.csv')
% ファイルを選択して、切り抜く場所を選んでP1とおく。
C = readcell(file,'Range','B42:AW734');
%csvとしてフォルダに書き出す
writecell(C,'[「file」の変数の文字をいれたい] ttt.csv']);

Risposta accettata

Atsushi Ueno
Atsushi Ueno il 21 Ott 2022
Modificato: Atsushi Ueno il 22 Ott 2022
文字ベクトルの連結は、['文字ベクトル' '文字ベクトル' ...]の形で書けます。
(因みに文字列の結合は、"文字列" + "文字列" + ... の形で書けます。)
uigetfile関数でファイル名を取得した後、fileparts関数でファイル名と拡張子を分割します。
%[file,path] = uigetfile('*.csv')
path = [pwd '/'];
file = 'Book1.csv'; % Book1.csvを選択したものとする
% ファイル名と拡張子を分割する
[~,name,ext] = fileparts(file);
% ファイルを選択して、切り抜く場所を選んでP1とおく。
C = readcell(file,'Range','B42:AW734');
%csvとしてフォルダに書き出す
writecell(C, [path name ' ttt' ext]); % パス名 + ファイル名 + ' ttt' + 拡張子の形になる
ls -la
total 264 drwxr-xr-x 2 mluser worker 4096 Oct 22 04:39 . drwx------ 1 mluser worker 4096 Oct 22 04:39 .. -rw-r--r-- 1 mluser worker 168000 Oct 22 04:39 Book1.csv -rw-r--r-- 1 mluser worker 88965 Oct 22 04:39 'Book1 ttt.csv'
  1 Commento
周平
周平 il 21 Ott 2022
丁寧にありがとうございます。理解できました。

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su プログラミング in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!