24小时热门版块排行榜    

查看: 1942  |  回复: 5

bme000

银虫 (小有名气)

[交流] 【求助】如何用matlab读取文件中带符号的、带两位小数点的数字? 已有3人参与

各位大侠,如何用fread正确读取.txt文件中带符号的、带两位小数点的数字?
fid=fopen(‘normal.txt’,‘r’)
ref=fread(fid,6,‘?’)
上面的问号应该填什么?

[ Last edited by bme000 on 2010-6-3 at 10:26 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)

Matlab

bme000(金币+4):谢谢帮助~~ 2010-06-04 07:57:15
引用回帖:
Originally posted by bme000 at 2010-06-03 09:39:09:
各位大侠,如何用fread正确读取.txt文件中带符号的、带两位小数点的数字?
fid=fopen(‘normal.txt’,‘r’)
ref=fread(fid,6,‘?’)
上面的问号应该填什么?

[ Last edited by bme000 on 2010-6-3 ...

复制几行数据看看 也好测试嘛~
工作了,偶尔会上来~可以关注新浪微博 @云是风的梦_Matlab
2楼2010-06-03 12:36:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wyt0828

木虫 (职业作家)

bme000(金币+3):谢谢交流~~~ 2010-06-04 07:57:37
[a,count]=fread(fid,size,precision)
precision(精度)
precision(精度)规定了以浮点数、整型数、字符读出时字节数。matlab 的precision(精度)的表达式与c语言、fortran语言、是一致的。不规定precision(精度),则字符默认为: ucher、则数值默认为:双精度 。

以下precision(精度)将保证读出具有一致的体积。
MATLAB           C or Fortran             Descriphon(精度)
'char'               'char*l'                    8 字节数,字符型
'uchar'             'unsigned char'         8 字节数
'schar'             'signed char'             8 字节数,字符型
'int8'               'integer*1'               8 字节数,整型数
'intl6'               'integer*2'              16 字节数,整型数.
'int32'             'integer*4'               32 字节数,整型数.
'int64'             'integer*8'               64 字节数,整型数
'uint8'             'integer*l'                8 字节数
'uintl6'            'integer*2'               16 字节数
'uint32'           'integer*4'               32 字节数
'uint64'           'integer*8'               64 字节数
'float32'          'real*4'                    浮点数, 32 字节数
'float64'          'real*8'                    浮点数, 32 字节数

以下precision(精度)规定读出指定的体积n。
'bitN'          N字节数,整型数      1<=N<=64
'ubitN'         N字节数,            1<=N<=64

所以你说的?那里填的是精度,这个就看你自己处理数据的要求填写了
答应不爱你
3楼2010-06-03 14:31:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bme000

银虫 (小有名气)

zzuwangshilei:积极关注自己的帖子 2010-06-04 11:13:17
引用回帖:
Originally posted by lijinfeng042 at 2010-06-03 12:36:39:

复制几行数据看看 也好测试嘛~

下面是前四行的数据
+42.55  +25.16  +18.75  +48.13  +41.53  +38.49  +18.52  +15.51  
+83.34  +49.25  +36.89  +91.49  +76.28  +70.85  +32.63  +30.43  
+61.87  +32.98  +21.13  +65.51  +52.10  +48.14  +21.58  +22.39  
+58.68  +32.93  +18.30  +65.38  +54.93  +49.61  +33.80  +27.73  
~~
4楼2010-06-04 08:00:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)

Matlab


robert2020(金币+1):多谢解答!辛苦了~~ 2010-06-04 22:44:57
引用回帖:
Originally posted by bme000 at 2010-06-03 09:39:09:
各位大侠,如何用fread正确读取.txt文件中带符号的、带两位小数点的数字?
fid=fopen(‘normal.txt’,‘r’)
ref=fread(fid,6,‘?’)
上面的问号应该填什么?

[ Last edited by bme000 on 2010-6-3 ...

直接读就可以了
[a,b,c,d,e,f,g,h]=textread('xx.txt',' %f  %f  %f  %f %f %f  %f  %f ')
工作了,偶尔会上来~可以关注新浪微博 @云是风的梦_Matlab
5楼2010-06-04 11:27:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)

Matlab

★ ★
zzuwangshilei(金币+2):多谢专家解答 2010-06-05 10:53:48
bme000(金币+2):多谢指导~~ 2010-06-06 08:45:44
引用回帖:
Originally posted by bme000 at 2010-06-04 08:00:11:

下面是前四行的数据
+42.55  +25.16  +18.75  +48.13  +41.53  +38.49  +18.52  +15.51  
+83.34  +49.25  +36.89  +91.49  +76.28  +70.85  +32.63  +30.43  
+61.87  +32.98  +21.13  +65.51  +52.10   ...

这样也可以textscan的
我改了一些数据的正负号 要不就没有体现了
CODE:
>>  fid = fopen('xx.txt'); c=textscan(fid,'%6.2f'); fclose(fid);
>> reshape(c{:},8,4)
ans =
   42.5500   83.3400   61.8700  -58.6800
   25.1600   49.2500   32.9800   32.9300
  -18.7500   36.8900   21.1300   18.3000
   48.1300   91.4900   65.5100   65.3800
   41.5300   76.2800   52.1000   54.9300
   38.4900   70.8500   48.1400   49.6100
   18.5200   32.6300   21.5800   33.8000
   15.5100   30.4300  -22.3900   27.7300
>>

[ Last edited by lijinfeng042 on 2010-6-5 at 01:28 ]
工作了,偶尔会上来~可以关注新浪微博 @云是风的梦_Matlab
6楼2010-06-05 01:23:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 bme000 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +35 医学老男孩 2026-08-13 82/4100 2026-08-17 19:18 by 我4大白菜
[基金申请] 感觉是下周放榜了 +4 angus9576 2026-08-17 8/400 2026-08-17 17:26 by angus9576
[基金申请] filecode=后面第一个是大写字母 +8 wangze12014 2026-08-14 10/500 2026-08-17 17:05 by xter9665
[基金申请] 时间戳变了,能看出什么问题? +4 基诺咪客 2026-08-17 4/200 2026-08-17 16:10 by Vivilian
[基金申请] 今天系统多次维护,明天很可能放榜! +8 zju2000 2026-08-16 9/450 2026-08-17 12:20 by lmz0216
[基金申请] 时间戳又变了8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
信息提示
请填处理意见