Main Content

转换您的 mdf 对象代码

由于不再推荐使用 mdf 对象及其函数,因此您应更新代码以直接访问 MDF 文件,如以下常见任务所示。

读取元数据

任务对象功能改用以下项

从元数据获取初始时间戳。

mdfObj = mdf("MyFile.MF4");
initTime = mdfObj.InitialTimestamp;
info = mdfInfo("MyFile.MF4");
initTime = info.InitialTimestamp;

获取一个文件中所有通道组的元数据。

mdfObj = mdf("MyFile.MF4");
chanGrpInfo = mdfObj.ChannelGroup;
chanGrpInfo = mdfChannelGroupInfo("MyFile.MF4");
获取通道组 2 中所有通道的元数据。
mdfObj = mdf("MyFile.MF4");
chanInfo = mdfObj.ChannelGroup(2).Channel;
chanInfo = mdfChannelInfo("MyFile.MF4", GroupNumber=2);
获取一个文件中所有通道的元数据。
mdfObj = mdf("MyFile.MF4");
chanInfo = channelList(mdfObj);
chanInfo = mdfChannelInfo("MyFile.MF4");
获取有关特定通道的元数据。
mdfObj = mdf("MyFile.MF4");
chanInfo = channelList(mdfObj, "XYZ", ExactMatch=true);
chanInfo = mdfChannelInfo("MyFile.MF4", Channel="XYZ");
获取有关部分匹配的通道的元数据。
mdfObj = mdf("MyFile.MF4");
chanInfo = channelList(mdfObj, "XYZ");
chanInfo = mdfChannelInfo("MyFile.MF4", Channel="*XYZ*");

读取数据

任务对象功能改用以下项
从一个文件中读取所有数据。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj);
data = mdfRead("MyFile.MF4");
读取通道组 2 中的所有数据。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj, 2);
data = mdfRead("MyFile.MF4", GroupNumber=2);
读取通道组 2 中通道 chan1chan2 中的数据。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj, 2, ["chan1","chan2"]);
data = mdfRead("MyFile.MF4", GroupNumber=2, Channels=["chan1","chan2"]);
读取 5 到 10 秒的时间范围内的数据。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj, 2, ["chan1","chan2"], seconds(5), seconds(10));
data = mdfRead("MyFile.MF4", GroupNumber=2, ...
           Channels=["chan1","chan2"], TimeRange=seconds([5,10]));
读取索引范围为 50 到 100 的数据。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj, 2, ["chan1","chan2"], 50, 100);
data = mdfRead("MyFile.MF4", GroupNumber=2, ...
           Channels=["chan1","chan2"], IndexRange=[50,100]);
将数据作为向量或时间序列读取。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj, OutputFormat="vector");

没有直接对等项。唯一支持的输出是时间表。将返回的时间表的每列(变量)作为向量或时间序列读取。请参阅时间表

仅应用数值到数值转换公式读取数据。
mdfObj = mdf("MyFile.MF4");
data = read(mdfObj, Conversion="numeric");

没有直接对等项。对于特定通道要求,您可以读取物理数据(值到值转换)或原始数据(值到文本、文本到值和文本到文本的转换):

data = mdfRead("MyFile.MF4", Channels=physChans, ReadRaw=false); % Default
data = mdfRead("MyFile.MF4", Channels=rawChans, ReadRaw=true);

请参阅从 MDF 文件中读取物理和原始数据

保存附件

任务对象功能改用以下项
保存 MDF 文件附件。
mdfObj = mdf("MyFile.MF4");
saveAttachment(mdfObj, "MyDB.dbc");
mdfSaveAttachment("MyFile.MF4", Attachment="MyDB.dbc");
将附件保存到指定文件夹。
mdfObj = mdf("MyFile.MF4");
saveAttachment(mdfObj, "MyDB.dbc", "C:\MyDB.dbc");
mdfSaveAttachment("MyFile.MF4", Attachment="MyDB.dbc", OutputFolder="C:\");
用新名称保存附件。
mdfObj = mdf("MyFile.MF4");
saveAttachment(mdfObj, "MyDB.dbc", "RenamedDB.dbc");

没有直接对等项。保存附件,然后重命名文件。

另请参阅

函数