24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 794  |  回复: 7
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

goalry

金虫 (正式写手)

[交流] 怎么实现对有格式数据的读取?

如下图,为含有原子坐标和类型的数据文件,每一种类型的数据各自为列,我想编程实现对如下数据的读取,请指教能用什么语言的哪些语句可以实现??

[ Last edited by csfn on 2008-12-29 at 20:26 ]
回复此楼

» 猜你喜欢

君子以自强不息,厚德载物
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

★ ★ ★
spur(金币+2,VIP+0):感谢参与,欢迎常来!
goalry(金币+1,VIP+0):是的!!
楼上用C实现,的确是个好办法。
在matlab里面也可以实现对文本文件中任何数据的读取。
在这里,不论的扩展名如何,只要这个文件中的数据储存是ascii码,就可以用
fid=fopen(.)
while ~feof(fid)
t_text=fgetl(.)
……
end
这样你就可将里面的数据及其信息给读进去了。
然后就可以进行你想要得操作 。
这些如果不熟的话,建议看一下matlab的help或者是看一些这个方面的书。
What would Jesus do?
4楼2007-12-26 22:28:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

yalefield

金虫 (文坛精英)

老汉一枚

★ ★ ★ ★
spur(金币+3,VIP+0):感谢帮助!辛苦了!!:)
goalry(金币+1,VIP+0):谢谢老兄!!
所有的编程语言都有这个功能。
然而,你必须事先设计好适当的数据结构来“盛”读到的数据。
以C语言为例
对每行来说,可以用
struct
{
    int   ln;
    char name[256];
    int   a;
    double x, y, z;
    double m;
} strLine;
来“盛”;
而整个文件(除了前几行),则对应着一个由strLine构成的数组。
对前几行来说,也需要设计相应的结构。

至于具体的按格式读,可以用fgets()和sscanf()组合使用。

FILE * fp=NULL
char aline[256];
strLine bline;

......// fp已经正常打开,前几行读完之后。
while (1)
{
       if (fgets (aline, 255, fp) == NULL)
            break;
       if (sscanf(aline, "%d %s %d %lf %lf %lf %lf",
          &bline.ln,
          bline.name,
          &bline.a,
          &bine.x,
          &bine.y,
          &bine.z,
          &bine.m) != 7)
             break;
          // 成功地读了一行
      ......
}

[ Last edited by yalefield on 2007-12-26 at 17:56 ]
2楼2007-12-26 17:50:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

carlon

金虫 (小有名气)

★ ★
spur(金币+2,VIP+0):感谢参与!:)
用c是比较快的也比较合适的,不过得需要一定的基础
如果不是很了解,建议看看入门的教材
3楼2007-12-26 18:32:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fah

铁杆木虫 (著名写手)

好像拷贝到word中后在copy到excel即可(偶做过一次)
5楼2007-12-27 08:47:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 322求调剂 +7 宋明欣 2026-03-27 7/350 2026-03-28 21:27 by sanrepian
[考研] 复试调剂 +3 raojunqi0129 2026-03-28 3/150 2026-03-28 15:27 by 落睿可思
[考研] 0856求调剂 +11 zhn03 2026-03-25 12/600 2026-03-28 13:32 by 唐沐儿
[考研] 0703本科郑州大学求调剂 +3 nhj_ 2026-03-25 3/150 2026-03-28 13:24 by Iveryant
[考研] 311求调剂 +4 冬十三 2026-03-24 4/200 2026-03-28 13:17 by 唐沐儿
[考研] 291求调剂 +15 hhhhxn.. 2026-03-23 21/1050 2026-03-28 11:26 by self2008
[考研] 一志愿南京航空航天大学材料学硕求调剂 +3 @taotao 2026-03-28 3/150 2026-03-28 10:26 by JourneyLucky
[考研] 材料与化工考研调剂 +17 孅華 2026-03-22 17/850 2026-03-28 08:35 by WYUMater
[考研] 330一志愿中国海洋大学 化学工程 085602 有读博意愿 求调剂 +3 wywy.. 2026-03-27 4/200 2026-03-28 03:32 by fmesaito
[考研] 265求调剂 +8 小木虫085600 2026-03-27 8/400 2026-03-27 22:16 by 无际的草原
[考博] 26申博 +3 加油冲啊! 2026-03-26 3/150 2026-03-27 15:38 by cls512
[考研] 考研调剂 +9 小蜡新笔 2026-03-26 9/450 2026-03-27 11:10 by 不吃魚的貓
[考研] 081200-11408-276学硕求调剂 +4 崔wj 2026-03-26 4/200 2026-03-27 08:04 by chemisry
[考研] 调剂求收留 +7 果然有我 2026-03-26 7/350 2026-03-27 00:26 by wxiongid
[考研] 求调剂 一志愿 本科 北科大 化学 343 +6 13831862839 2026-03-24 7/350 2026-03-26 22:57 by 不吃魚的貓
[考研] 294分080500材料科学与工程求调剂 +4 柳溪边 2026-03-26 4/200 2026-03-26 21:14 by XPU李庆
[考研] 321求调剂 +6 Ymlll 2026-03-24 6/300 2026-03-26 20:50 by 不吃魚的貓
[考研] 【双一流院校新能源、环境材料,材料加工与模拟招收大量调剂】 +4 Higraduate 2026-03-22 8/400 2026-03-26 20:34 by Higraduate
[考研] 352求调剂 +4 大米饭! 2026-03-22 4/200 2026-03-26 16:40 by 不吃魚的貓
[考研] 材料与化工328分调剂 +6 。,。,。,。i 2026-03-23 6/300 2026-03-25 22:30 by 418490947
信息提示
请填处理意见