(1)DHSVM模型官方网站上提供了一个二进制文件与ASCII文件的转换代码,是用C写的,昨天我仔细看了一下的这个代码,对二进制文件读写有了更深的认识。这个代码是对矩阵数据做处理,因此需要提供行列号。同时,我发现这个代码还可以转换数据格式,比如float to int等等。
这个代码的是写了main函数完整代码,main函数的参数包括:from format, to format, infile, outfile, nrows 和 nclos。在CodeBlocks中,运行代码配置这些参数如下: 需要说明的是,如果是from format 和 to format如果均不包含asii格式,那么这个代码执行的是数据格式转换,而且输入输出都是二进制文件。 对于多个需要转换的文件,可以写个批处理命令如下: (2)Matlab对二进制文件与ASCII文件转换(矩阵数据),我昨天也写了一个转换的函数。如下:
函数的调用如下: 当然这个函数,写得也比较粗糙。其实后面我觉得用MATLAB完全没有必要写个函数来转换,直接调用matlab的fread()和fwrite()函数来读写即可。
C语言与MATLAB对二进制文件与ASCII文件转换 |