主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

保存

ワークスペース変数をファイルに保存

説明

保存(文件名は,現在のワークスペースにあるすべての変数を,文件名という名前のMATLAB®形式のバイナリファイル(垫ファイル)に保存します。文件名が存在する場合,保存はこのファイルを上書きします。

保存(文件名变量は,变量で指定された構造体配列の変数またはフィールドのみを保存します。

保存(文件名变量fmtは,fmtで指定されたファイル形式で保存します。变量引数はオプションです。变量を指定しない場合,関数保存はワークスペースのすべての変数を保存します。

保存(文件名变量版本は,版本で指定された垫ファイルのバージョンに保存します。变量引数はオプションです。

保存(文件名变量版本, ' -nocompression ')は圧縮せずに変数を垫ファイルに保存します。“-nocompression”フラグは垫ファイルVersion 7(既定)および7.3版本のみをサポートします。そのため,版本v7的または“-v7.3”に指定しなければなりません。变量引数はオプションです。

保存(文件名变量“附加”)は,既存のファイルに新しい変数を追加します。変数が垫ファイルに既に存在する場合,保存はワークスペース内の値を使用してこれを上書きします。

ASCIIファイルの場合,“添加”はファイルの末尾にデータを追加します。

版本6席ファイルに追加するには,入力引数として“6”も含めなければなりません。

保存(文件名变量“添加”,“-nocompression”)は,圧縮せずに既存のファイルに新しい変数を追加します。既存のファイルは垫ファイルVersion 7(既定)または7.3でなければなりません。

保存文件名は,構文のコマンド形式です。コマンド形式では,必要な特殊文字が少なくなります。かっこを入力したり,入力を一重引用符または二重引用符で囲んだりする必要はありません。入力は,コンマではなく空白を使用して区切ります。

たとえば,test.matという名前のファイルを保存する場合,以下のステートメントは等価です。

保存测试。保存('test.mat') %函数形式

前述の構文で説明したいずれかの入力を含めることができます。たとえば,Xという名前の変数を保存するには,次のコマンドを入力します。

保存测试。保存('test.mat','X') %函数形式

文件名など,入力のいずれかが変数または字符串である場合は,コマンド形式を使用しないでください。

すべて折りたたむ

ワークスペースからすべての変数を,バイナリ垫ファイルtest.matに保存します。文件名が変数である場合は,関数構文を使用します。

文件名=“test.mat”;保存(文件名)

それ以外の場合は,コマンド構文を使用することもできます。

保存test.mat

ワークスペースから変数を削除し,関数负载でデータを取得します。

明确负载(“test.mat”

pの2つの変数を作成し,pqfile.matというファイルに保存します。

p =兰德(10);q =(10)的;保存(“pqfile.mat”“p”“问”

MATLAB®は,現在のフォルダーにあるファイルpqfile.matに変数を保存します。

コマンド構文を使用して,変数pを保存することもできます。

保存pqfile.matp

2つの変数を作成し,ASCIIファイルに保存してからファイルの内容を表示します。

p =兰德(10);q =(10)的;保存(“pqfile.txt”“p”“问”“ascii”)类型(“pqfile.txt”

関数类型は,ファイルの内容を表示します。

または,保存の操作のコマンド構文を使用します。

保存pqfile.txtp美国信息交换标准代码

一个bおよびcの3つのフィールドを含む構造体s1を作成します。

s1。一个= 12.7; s1.b = {“abc”, (4 5;6 7]};s1.c =“你好!”

構造体s1の各フィールドを,個別の変数としてnewstruct.matという名前のファイルに保存します。

保存(“newstruct.mat”“结构”“s1 ');

関数を使用して,ファイルの内容をチェックします。

disp (newstruct.mat的内容:“
newstruct.mat内容:
谁(“- file”“newstruct.mat”
Name Size Bytes Class Attributes a 1x1 8 double b 1x2 246 cell c 1x6 12 char

2つの変数を作成し,example.matという7.3版垫ファイルに保存します。

一个=兰德(5);B =魔法(10);保存(“example.mat”“一个”“B”“-v7.3”

保存の操作のコマンド構文を使用することもできます。

保存example.mat一个B-v7.3

2つの変数を作成し,圧縮なしでmyFile.matという版本7または7.3の垫ファイルに保存します。

一个=兰德(5);B =魔法(10);保存(“myFile.mat”“一个”“B”“-v7.3”“-nocompression”

または,保存の操作のコマンド構文を使用します。

保存myFile.mat一个B-v7.3-nocompression

“-nocompression”フラグを使用すると,2GBより大きい変数や,圧縮による利点がない変数の保存が高速化されます。

2つの変数を垫ファイルに保存します。次に3番目の変数を同じファイルに追加します。

p =兰德(10);q =(10)的;保存(“test.mat”“p”“问”

垫ファイルの内容を表示します。

谁(“- file”“test.mat”
Name Size Bytes Class Attributes p 1x10 80 double q 10x10 800 double

新しい変数一个を作成し,垫ファイルに追加します。

= 50;保存(“test.mat”“一个”“添加”

垫ファイルの内容を表示します。

谁(“- file”“test.mat”
Name Size Bytes Class Attributes a 1x1 8 double p 1x10 80 double q 10x10 800 double

変数一个test.matに追加されます。前述の変数pは上書きされません。

メモ

版本6席ファイルに追加するには,“6”“添加”の両方を指定します。たとえば,変数一个をファイルtest.matに保存するには,次の関数を呼び出します。

保存(“test.mat”“一个”“6”“添加”

2つの変数を垫ファイルに保存します。次に3番目の変数を圧縮なしで同じファイルに追加します。

2つの変数一个Bを作成し,垫ファイル版本7または7.3に保存します。既定では,関数保存は変数一个およびBを,myFile.matに保存する前に圧縮します。

一个=兰德(5);B =魔法(10);保存(“myFile.mat”“一个”“B”“-v7.3”

垫ファイルの内容を表示します。

谁(“- file”“myFile.mat”
Name Size Bytes Class Attributes A 5x5 200 double B 10x10 800 double

新しい変数Cを作成して,圧縮なしでmyFile.matに追加します。

C = 5;保存(“myFile.mat”“C”“添加”“-nocompression”

垫ファイルの内容を表示します。

谁(“- file”“myFile.mat”
Name Size Bytes Class Attributes A 5x5 200 double B 10x10 800 double C 1x1 8 double

入力引数

すべて折りたたむ

ファイルの名前。文字ベクトルまたは字符串スカラーとして指定します。文件名を指定しないと,関数保存matlab.matというファイルに保存します。

文件名に拡張子がなく(つまり,テキストが後に続くピリオドがない),格式の値が指定されていない場合,MATLABは.matを追加します。文件名に絶対パスが含まれない場合,MATLABは現在のフォルダーに保存します。ファイルの書き込み権限をもっていなければなりません。

コマンド形式の保存を使用する場合は,入力を一重引用符で囲む必要はありません。ただし,文件名にスペースが含まれる場合,引数を一重引用符で囲まなければなりません。たとえば,保存的文件名withspace.matのようになります。

メモ

文件名が字符串の場合は,コマンド形式を使用しないでください。

ワークスペース変数をリモートの場所にある垫ファイルに保存するには,文件名に次の形式の统一资源定位符(URL)を指定します。

scheme_name: / /path_to_file/my_file.mat

リモートの場所に基づいて,scheme_nameには次の表の値のいずれかを指定できます。

リモートの場所 scheme_name
Amazon S3™ s3
Windows Azure®Blob存储 wasbwasbs

関数保存でリモートの場所への保存がサポートされるのは,7.3版本の垫ファイルのみです。

オンラインストレージサービスにアクセスするためのMATLABの設定の詳細については,リモートデータの操作を参照してください。

例:“myFile.mat”

例:s3: / / bucketname / path_to_file / my_file.mat '

保存する変数の名前。文字ベクトルまたは字符串スカラーとして指定します。コマンド形式の保存を使用する場合は,入力を一重引用符で囲む必要はありません。

メモ

变量が字符串の場合は,コマンド形式を使用しないでください。

变量は,次のいずれかの形式にできます。

入力变量の形式 保存する変数
var1,…,varN 個別の文字ベクトルまたは字符串として指定された,リストされた変数を保存します。
パターンを一致させるには,ワイルドカード‘*’を使用します。たとえば,保存(“filename.mat”,“*”)は,ファイル内の一个で始まるすべての変数を保存します。
“正则表达式”,expr1,…,exprN 文字ベクトルまたは字符串として指定された,正規表現に一致する名前をもつ変数のみを保存します。たとえば,保存(“filename.mat”、“正则表达式”,“^我的”,“^外胎”)は,名前が我的または外胎で始まるファイルの変数だけを保存します。
“结构”,structName structNameで指定されたスカラー構造体のフィールドをファイルの個別変数として格納します。たとえば,保存(“filename.mat”、“结构”,“S”)はスカラー構造体年代を保存します。
“结构”,structName,field1,…,fieldN 指定されたスカラー構造体の指定されたフィールドをファイルの個別変数として格納します。たとえば,保存(“filename.mat”、“结构”,“年代”,“,“b”)はフィールドs.a.mit获得を保存します。
“结构”,structName“正则表达式”,expr1,…,exprN 文字ベクトルまたは字符串として指定された,正規表現に一致する名前をもつフィールドのみを保存します。

ファイル形式。以下のいずれかとして指定します。コマンド形式の保存を使用する場合は,保存myFile.txt -ascii -tabsのように,入力を一重引用符または二重引用符で囲む必要はありません。

fmtの値 ファイル形式
“垫”

バイナリ垫ファイル形式

“ascii”

8桁の精度のテキスト形式

- tabs“ascii”、“”

8桁の精度のタブ区切りテキスト形式

“ascii”、“总价值的

16桁の精度のテキスト形式

- tabs ascii,总价值”、“”

16桁の精度のタブ区切りテキスト形式

垫ファイルの場合,1台のマシンに保存され,別のマシンで読み込まれるデータは,異なるマシンの浮動小数点書式によって可能な限りの精度と範囲を維持します。

いずれかのテキスト形式を使用して,MATLABの数値をテキストファイルに保存します。この場合,

  • 各変数は2次元の配列でなければなりません。

  • 出力には,複素数の実数部のみが含まれます。

  • MATLABは,各変数からのデータを順番にファイルに書き込みます。関数负载を使用してファイルを読み取ることを計画する場合,すべての変数の列数が同じでなければなりません。関数负载は,ファイルから単一変数を作成します。

テキスト形式を指定し,変数が2次元の文字配列である場合,MATLABは文字を対応する内部ASCIIコードに変換します。たとえば,“abc”はテキストファイルで次のように表示されます。

9.7000000 e + 001 9.8000000 9.9000000 e + e + 001 001

リモートの場所に保存する場合,保存でサポートされるfmtの指定値は“垫”のみです。

データ型:字符|字符串

垫ファイルのバージョン。以下のいずれかとして指定します。コマンド形式の保存を使用する場合は,入力を一重引用符または二重引用符で囲む必要はありません。

版本の値 読み込まれるMATLABのバージョン サポート機能 圧縮 各変数の最大サイズ
“-v7.3” 7.3 (R2006b)以降

変数の一部の読み込みまたは保存,およびVersion 7のすべての機能。7.3版本では,“-nocompression”オプションを使用して,圧縮せずに変数を保存することができます。

あり(既定値) 64年ビットコンピューターで2 GB以上
v7的 7.0 (R14)以降

既定の文字エンコードスキームが異なるシステム間でファイル共有を可能にするUnicode®文字エンコード,および版本6のすべての機能Version 7では,“-nocompression”オプションを使用して,圧縮せずに変数を保存することができます。

あり(既定値) 1変数あたり2 ^ 31バイト
“6” 5 (R8)以降

N次元配列,细胞配列,構造体配列,長さが19文字を超える変数名および版本4のすべての機能

なし 1変数あたり2 ^ 31バイト
v4的 すべて

2次元の配列,文字配列およびスパース配列。

なし 1配列あたり100000000要素,1変数あたり2 ^ 31バイト

データ項目に,指定されたバージョンでサポートされていない機能が必要になる場合,MATLABはこれらの項目を保存せずに,警告を表示します。MATLABソフトウェアの現在のバージョンより新しいバージョンを指定することはできません。

メモ

7.3版垫ファイルで使用されるHDF5ベースの形式には,ファイル内容を記述するためのオーバーヘッドストレージが必要になります。cell 配列、構造体配列または異種混合のデータ型を格納できるその他のコンテナーの場合、Version 7.3 の MAT ファイルは Version 7 の MAT ファイルよりも大きくなることがあります。

垫ファイルの既定のバージョンを表示または設定するには,[ホーム]タブに移動し,[環境]セクションで[基本設定]をクリックします。(MATLAB)[一般](垫ファイル]を選択してから,(垫ファイルの保存形式)オプションを選択します。

データ型:字符|字符串

制限

  • 関数保存でリモートデータを操作する場合:

    • HDFS™への保存はサポートされていません。

    • 垫ファイル以外の形式でのワークスペース変数の保存はサポートされていません。

ヒント

  • より柔軟にASCIIファイルを作成するには,dlmwriteまたはを使用します。

  • 関数保存でグラフィックスオブジェクトを保存すると,オブジェクトの再生成に必要なすべての情報がファイルに含まれるため,大きなファイルが作成される可能性があります。

  • 関数保存を使用して图を保存しないでください。代わりに関数savefigを使用します。R2014b以降で保存を使用して图を保存すると,それより前のバージョンのMATLABで垫ファイルにアクセスできなくなります。保存を使用して图を保存すると,関数から警告メッセージが表示されます。保存を使用する前に,すべての图を削除してください。图は直接ワークスペース内に存在しない場合があることに注意してください。たとえば,構造体や、コールバック関数のワークスペース内に保存されている可能性があります。

R2006aより前に導入