如何将.txt转换为.cdf?需要不能将txt读取为cdf的Matlab

时间:2014-03-18 14:56:40

标签: matlab

我有一个包含通用数据格式(CDF)数据的txt文件。 Matlab具有读取此功能的功能,但它不起作用。我假设因为扩展名是.txt而不是.cdf。 当我尝试阅读时,我得到:

???使用==>时出错cdfinfoc 从CDF库发出错误:“NOT_A_CDF_OR_NOT_SUPPORTED:已命名的CDF已损坏或 当前库版本不支持。“

==>中的错误cdfinfo在170 tmp = cdfinfoc(filename);

==>中的错误cdfread在184 info = cdfinfo(filename);

有没有办法欺骗Matlab并阅读它或者我是否需要将txt转换为.cdf?如果是这样,我该怎么做?

谢谢!

编辑:我尝试阅读的文件来自此链接:http://www.ee.washington.edu/research/pstca/pf14/ieee14cdf.txt

这表示数据在CDF中:http://www.ee.washington.edu/research/pstca/pf14/pg_tca14bus.htm

2 个答案:

答案 0 :(得分:1)

如果它实际上是一个txt文件(因为它包含你可以阅读的文本数据),那么它实际上不是CDF格式。您可以尝试使用makeCDF或其他工具将文本数据转换为CDF文件。

如果这对您不起作用,您需要发布有关文件实际格式的更多信息。该文本文件可以包含任何内容。也许提供一些示例线?

修改

查看您的文件后,这是一种不相关的格式,恰好也称为CDF。您可以在此处找到此格式的阅读器:Read IEEE Common Data Format (CDF) (Power systems, Load Flow)

答案 1 :(得分:0)

在这两种情况下,我认为它实际上已经崩溃的地方是对图书馆的调用:

fmt = cdflib.getFormat(cdfid);

请参阅:cdflib.getFormat,特别是这些行:

  

此函数对应于CDF库C API例程   CDFgetFormat。

     

要使用此功能,您必须熟悉CDF C界面。   阅读CDF Web site上的CDF文档。

无论如何,这不仅仅是因为文件扩展名;我通过复制MATLAB example.cdf,将其重命名为example.txt并在两者上调用cdfinfo来测试这一点。没有错误,返回的数据是相同的,除了明显的文件名/修改日期。