スタンドアロンアプリ​ケーションにデータフ​ァイルを含ませるには​どのようにすればよい​ですか?

14 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2013 年 12 月 16 日
回答済み: MathWorks Support Team 2013 年 12 月 16 日
MATLAB プログラムで使用されるデータファイル "mydata.txt" というファイルがあります。MATLAB Compiler を使用してこのプログラムをスタンドアロンアプリケーションにコンパイルしても、データファイルは自動では含まれることはありません。スタンドアロンアプリケーションを実行すると、以下のようなエラーとなります。
 
File not found.

採用された回答

MathWorks Support Team
MathWorks Support Team 2013 年 12 月 16 日
MATLAB Compiler はデータファイルを使用するプログラムをスタンドアロンアプリケーション化する際に、データファイルを自動で含ませることはしません。
データファイルを含ませるためには以下の 3 つの方法があります。
1. データファイルを CTF ファイルの一部として含ませます。たとえば、mydata.txt というデータファイルを使用する myfun.m というプログラムをコンパイルする場合、以下のようなコードで行います。
>> mcc -m myfun.m -a mydata.txt
この場合、mydata.txt ファイルはCTFファイルに含まれ、スタンドアロンアプリケーションと関連付けられます。複数のデータファイルを含ませる場合、-a オプションを使用します。
>> mcc -m myfun.m -a mydata1.txt -a mydata2.txt -a mydata3.txt
CTF フォルダ内で、データファイルのパスをフルパスで取得するには CTFROOT 関数を使用します。
function myfun
disp(fullfile(ctfroot, mfilename, 'mydata.txt'));
2. スタンドアロンアプリケーションの EXE ファイルと CTF ファイルと同じフォルダーにコピーします。コード内ではパスの指定は行わずにファイル名のみで指定します。たとえば、 mydata.txt ファイルを開くには以下のコマンドを使用します。
fid = fopen ('mydata.txt');
関連する Article もご覧ください。
3. 絶対パスによりデータファイルを指定します。これはシステム上に存在するデータファイルを直接参照する、最も簡単な方法です。たとえば、datafiles というフォルダ内の mydata.txt ファイルを参照するためには、以下のコマンドを使用します。
fid = fopen ('C:\datafiles\mydata.txt');
 
 
 

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeスタンドアロン アプリケーション についてさらに検索

タグ

タグが未入力です。

Community Treasure Hunt

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

Start Hunting!