24小时热门版块排行榜    

查看: 1107  |  回复: 11

mkluowen

铜虫 (小有名气)

[求助] 数据输出

运行结果用data 格式输出后,—1到1之间的数,小数点前的零不显示,比如-0.144输出后显示为-.144,怎么解决啊,还有,怎么规定每个数据占据的长度。
Write #2, natom, namol + 1, 1, qc, cc1x(ix), cc1y(iy), cc1z(iz),输出后的数据一个挨一个的。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

ausir

木虫 (正式写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
mkluowen: 金币+2, 感谢参与 2013-05-09 09:50:29
jjdg: 编辑内容 2013-05-10 01:29
在 Excel 中新建一个空白文件,然后插入用户模块。在用户模块中,用下面的例子试验即可。
CODE:
Sub test()
Dim a, b, c, d
Open "d:\test\test.dat" For Output As #1
a = 1.005
b = 0.123
c = -1.03
d = -0.523
Write #1, Format(a, "#.###") & Chr(9) & Format(b, "##.###") & Chr(9) & Format(c, "#.###") & Chr(9) & Format(d, "#.###")
Close #1
End Sub

结果如下: test.dat 文件的内容。注意:用Write 写的有双引号。
"1.005        .123        -1.03        -.523"
这个应该可以满足要求。如果使用Print 语句,可能会更加方便些。

[ Last edited by jjdg on 2013-5-10 at 01:29 ]
2楼2013-05-07 19:14:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ausir

木虫 (正式写手)

【答案】应助回帖

★ ★ ★
mkluowen: 金币+3, ★有帮助 2013-05-16 18:14:26
引用回帖:
4楼: Originally posted by mkluowen at 2013-05-09 09:48:16
我要的是输出的—0.523,不是-.523...

把“#.###" 修改为 "0.000"即可。结果如下:
"1.005        0.123        -1.030        -0.523"
7楼2013-05-09 20:43:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

★
jjdg: 金币+1, 感谢参与 2013-05-17 00:42:20
我发现我错了,我可能是处理字符串太多了,老是往字符串上想。
数字和字符串的存放是不一样的,这个我也不太懂。
8楼2013-05-16 21:36:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

ausir的 方法也是存储为字符串。
搂主在是要以什么方式存放,以文本存放的话,ausir的 方法 完全满足你的要求。若是以二进制方法可能就要改改程序。还有存放后又如何读取,也要考虑。
9楼2013-05-16 21:47:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

引用回帖:
10楼: Originally posted by mkluowen at 2013-05-18 08:56:24
以文本存放,读取是用其他软件读取。但是我感觉用字符串的形式估计无法读取。...

你用什么的方式存放,再用什么方式读取,就是一个转换问题。
vb中用str()将数字转为字符串; val()正好相反。
11楼2013-05-18 17:34:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

deephill

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
mkluowen: 金币+2 2013-05-09 09:50:52
我觉得比较直接的方式是把每个数据 用str()函数转成字符串,然后把长度不够的字符串在后面,补零 用&“0”,这样长度一致全搞定。
最后用replace函数把-0.换成-.  就可以写入文件了。
3楼2013-05-08 21:14:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mkluowen

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by ausir at 2013-05-07 19:14:10
在 Excel 中新建一个空白文件,然后插入用户模块。在用户模块中,用下面的例子试验即可。
Sub test()
Dim a, b, c, d
Open "d:\test\test.dat" For Output As #1
a = 1.005
b = 0.123
c = -1.03
d ...

我要的是输出的—0.523,不是-.523
4楼2013-05-09 09:48:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mkluowen

铜虫 (小有名气)

引用回帖:
3楼: Originally posted by deephill at 2013-05-08 21:14:19
我觉得比较直接的方式是把每个数据 用str()函数转成字符串,然后把长度不够的字符串在后面,补零 用&“0”,这样长度一致全搞定。
最后用replace函数把-0.换成-.  就可以写入文件了。

我是新手,没有看得太明白,能举一个简单的例子吗?
5楼2013-05-09 09:49:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shyboylpf

新虫 (初入文坛)

我知道用C\C++怎么写。哈哈
6楼2013-05-09 20:15:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mkluowen

铜虫 (小有名气)

引用回帖:
9楼: Originally posted by deephill at 2013-05-16 21:47:17
ausir的 方法也是存储为字符串。
搂主在是要以什么方式存放,以文本存放的话,ausir的 方法 完全满足你的要求。若是以二进制方法可能就要改改程序。还有存放后又如何读取,也要考虑。

以文本存放,读取是用其他软件读取。但是我感觉用字符串的形式估计无法读取。
10楼2013-05-18 08:56:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 mkluowen 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 极限拉扯,如何抉择 +10 Isak0320 2026-10-12 14/700 2026-10-14 11:39 by thegarfield
[基金申请] 申请科研项目纯靠实力能成功吗? 200+3 David1982 2026-10-13 6/300 2026-10-14 11:14 by 北京莱茵编辑
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +8 wangyl_123 2026-10-10 12/600 2026-10-13 20:40 by Merryya
[教师之家] 课题组会帮你通过考核么? +4 好运来~9527 2026-10-10 7/350 2026-10-13 08:41 by xli1984
[基金申请] 入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍 +6 13108017953 2026-10-08 6/300 2026-10-12 20:07 by w3w3y3
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见