amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
查看: 5098|回复: 110

【分享】C#做的串口软件,支持二维描点和显示3D姿态

  [复制链接]
发表于 2015-9-1 23:28:32 | 显示全部楼层 |阅读模式
本帖最后由 天下乌鸦一般黑 于 2015-9-1 23:32 编辑

第一次发帖,分享个东西吧。今年年初开始接触c#,边学边做的一个软件,环境是vs2010,自己感觉差不多凑合能用,欢迎高手多拍砖哈,对于新人,应该能在里面找到串口、chart控件和opengl在C#下的调用等,我就不过多的介绍了,分享给大家,没兴趣的下了也不看,有兴趣的下了看看也应该能看懂,我自己觉得代码有点乱,不过注释还是有的,下面是一些截图。




三维姿态可以通过鼠标左键点击界面进入控制模式,右键点击退出,和cs死亡后的自由视角一样,鼠标控制方向,wsad分别控制前进后退左移右移,q是上升,e是下降。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2015-9-1 23:46:12 | 显示全部楼层
谢谢,学习学习
发表于 2015-9-2 00:14:18 | 显示全部楼层
3D显示用的是WPF做的吗?
发表于 2015-9-2 00:37:12 来自手机 | 显示全部楼层
数据能保存为csv格式就好了
 楼主| 发表于 2015-9-2 07:52:06 | 显示全部楼层
怪侠封沉 发表于 2015-9-2 00:14
3D显示用的是WPF做的吗?

工程是winform的,3d是调用的opengl
发表于 2015-9-2 08:29:19 | 显示全部楼层
挺不错的,加油
发表于 2015-9-2 08:32:03 | 显示全部楼层
发表于 2015-9-2 08:43:53 | 显示全部楼层
三维里的这个飞机本身能动吗?
我试了,目前看只能视角动
 楼主| 发表于 2015-9-2 08:48:36 | 显示全部楼层
本帖最后由 天下乌鸦一般黑 于 2015-9-2 08:56 编辑
ablightstar 发表于 2015-9-2 08:43
三维里的这个飞机本身能动吗?
我试了,目前看只能视角动


可以,按照协议发送数据就可以动了,可以显示姿态,包括pitch yaw 和roll 但是不能显示位移。
发表于 2015-9-2 08:49:46 | 显示全部楼层
赞一个不错!
发表于 2015-9-2 09:04:49 | 显示全部楼层
学习,谢谢分享
发表于 2015-9-2 09:39:48 | 显示全部楼层
厉害,正好看下3维是怎么做的
发表于 2015-9-2 09:49:16 | 显示全部楼层
牛人啊。膜拜一下
发表于 2015-9-2 10:00:23 | 显示全部楼层
下来学习下!
发表于 2015-9-2 13:31:18 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-9-2 07:52
工程是winform的,3d是调用的opengl

C#对OpenGL的支持不是很友好的样子,不知道用起来感觉怎么样,但OpenGL在其他地方用的很多。
发表于 2015-9-2 13:47:02 | 显示全部楼层
厉害      我也正想学这一块,谢谢分享
 楼主| 发表于 2015-9-2 14:11:35 | 显示全部楼层
怪侠封沉 发表于 2015-9-2 13:31
C#对OpenGL的支持不是很友好的样子,不知道用起来感觉怎么样,但OpenGL在其他地方用的很多。 ...

我水平低了点,不懂优化啥的,不过单纯的做一点简单的模型显示和姿态还好,高级点的估计要卡出翔吧。
发表于 2015-9-2 16:13:55 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-9-2 14:11
我水平低了点,不懂优化啥的,不过单纯的做一点简单的模型显示和姿态还好,高级点的估计要卡出翔吧。 ...

不太了解,我过些天准备尝试一下,到时还得请教你啦
发表于 2015-9-2 18:30:49 | 显示全部楼层
多谢分享~赞一个。
发表于 2015-9-3 20:07:18 | 显示全部楼层
C#入门容易不,一直想学一门上位机编程语言
 楼主| 发表于 2015-9-3 21:23:00 | 显示全部楼层
596142041 发表于 2015-9-3 20:07
C#入门容易不,一直想学一门上位机编程语言

很容易上手的。试试就知道了。
发表于 2015-9-3 21:53:42 | 显示全部楼层
很不错  也想学C#但是一直没时间
发表于 2015-9-5 00:19:04 | 显示全部楼层
不错,感谢楼主
发表于 2015-9-5 00:37:56 来自手机 | 显示全部楼层
标记,串口二维描点,谢谢楼主
发表于 2015-9-6 10:46:03 | 显示全部楼层
牛逼,,顶顶。。。
发表于 2015-9-6 13:39:02 | 显示全部楼层
不错!学习了。
发表于 2015-9-6 15:14:31 | 显示全部楼层
C# 串口软件,不错
发表于 2015-9-6 15:15:33 | 显示全部楼层
参考下!
发表于 2015-9-11 13:12:52 | 显示全部楼层
学习!C#        !!!!!!!!!!
发表于 2015-9-11 15:00:16 | 显示全部楼层
不错,谢谢分享。。。
发表于 2015-9-11 16:03:03 | 显示全部楼层
很好!!写的不错
发表于 2015-9-11 16:29:03 | 显示全部楼层
感谢楼主分享
发表于 2015-9-11 17:18:55 | 显示全部楼层
谢谢分享
发表于 2015-9-11 19:04:29 | 显示全部楼层
应用得不错, 来给楼主顶一顶...
发表于 2015-10-25 09:59:15 来自手机 | 显示全部楼层
看了你的代码,串口应该是csdn论坛上修改的,再用你的csv控件,能说说怎么用么,我要把串口数据全部存到电脑里面,不是按一下在去弄
 楼主| 发表于 2015-10-25 10:25:52 | 显示全部楼层
霸气侧漏 发表于 2015-10-25 09:59
看了你的代码,串口应该是csdn论坛上修改的,再用你的csv控件,能说说怎么用么,我要把串口数据全部存到电 ...

我是搞单片机的啊,这玩意都是西拼八凑的,要是仅仅是保存串口数据,你试试把串口数据送richbox,然后每隔一段时间保存一下richbox里的东西
发表于 2015-10-25 11:08:38 来自手机 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-10-25 10:25
我是搞单片机的啊,这玩意都是西拼八凑的,要是仅仅是保存串口数据,你试试把串口数据送richbox,然后每 ...

哈哈,我也是搞单片机,看你的上位机弄得不错。richbox是什么贵,我是想把收到的数据按类存储,所以看你的csv觉得挺好的,只要用逗号就可以实现一个类存储在同一列。对了你的csv控件在什么地方看到的,有使用教程没,我看你的程序勉强可以存储数据。详细使用不清楚
 楼主| 发表于 2015-10-25 11:43:18 | 显示全部楼层
霸气侧漏 发表于 2015-10-25 11:08
哈哈,我也是搞单片机,看你的上位机弄得不错。richbox是什么贵,我是想把收到的数据按类存储,所以看你 ...


richtextbox 是winform里的一个控件而已,百度搜一下。csv这个不是控件,自己写一个小程序就可以了啊,把数据从串口取出来,验证没问题就转成字符串 保存到文件中,csv的格式你看下。我这个功能太简单,就是玩玩,能给大家起个参考作用就不错了。。。
发表于 2015-10-25 11:51:50 来自手机 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-10-25 11:43
richtextbox 是winform里的一个控件而已,百度搜一下。csv这个不是控件,自己写一个小程序就可以了啊, ...

不会写啊,我是看了杜洋然后就研究你的代码,后来发现你的串口部分和一个帖子内容一样,嘿嘿,我搜下richtextbox
 楼主| 发表于 2015-10-25 11:56:49 | 显示全部楼层
霸气侧漏 发表于 2015-10-25 11:51
不会写啊,我是看了杜洋然后就研究你的代码,后来发现你的串口部分和一个帖子内容一样,嘿嘿,我搜下rich ...

是的 和csdn的一个帖子一样,因为串口如果接收的数据帧频率高,会导致程序窗口在关闭的时候假死,csdn的那个帖子可以避免这个问题。
发表于 2015-10-25 12:58:25 来自手机 | 显示全部楼层
棒极了~~~~~~
发表于 2015-10-25 13:36:00 | 显示全部楼层
哥们,你学C#多长时间写出来的
 楼主| 发表于 2015-10-25 14:12:53 | 显示全部楼层
霸气侧漏 发表于 2015-10-25 13:36
哥们,你学C#多长时间写出来的

C# 的winform ,环境是vs2010  上手两周吧,后面就是根据需要搜索相应的功能如何实现了
发表于 2015-10-25 14:13:30 | 显示全部楼层
谢谢楼主分享,真不错,正在学习这个
发表于 2015-10-26 20:29:01 | 显示全部楼层
我一直都想学习怎样描点,谢谢楼主分享
发表于 2015-10-26 23:43:10 | 显示全部楼层
不错。谢谢分享
 楼主| 发表于 2015-10-27 19:49:31 | 显示全部楼层
毛毛 发表于 2015-10-26 23:43
不错。谢谢分享

都是百度,然后攒在一起来的东西,能有点帮助就好啊
发表于 2015-10-30 12:52:50 | 显示全部楼层
楼主我想把收到的数据实时存储到csv文件怎么做呢,纠结
 楼主| 发表于 2015-10-30 17:30:17 | 显示全部楼层
霸气侧漏 发表于 2015-10-30 12:52
楼主我想把收到的数据实时存储到csv文件怎么做呢,纠结


csv文件就是个文本文件其实
比如你把一堆字符串按照如下格式打印到txt中
id,name,data
1,a,1001
2,b,2002
3,c,3003
然后把txt改名为csv,自然就可以用excel和matlab处理了。
发表于 2015-10-30 17:33:47 | 显示全部楼层
beautiful & mark
发表于 2015-10-30 20:47:21 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-10-30 17:30
csv文件就是个文本文件其实
比如你把一堆字符串按照如下格式打印到txt中
id,name,data

已经搞定了,嘿嘿
 楼主| 发表于 2015-10-30 21:28:48 | 显示全部楼层

嗯啊 恭喜啊 你也可以单独开一个线程 来做这个事儿 。
发表于 2015-10-30 21:58:18 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-10-30 21:28
嗯啊 恭喜啊 你也可以单独开一个线程 来做这个事儿 。

线程?不会用,愿闻其详
 楼主| 发表于 2015-10-31 12:30:04 | 显示全部楼层
霸气侧漏 发表于 2015-10-30 21:58
线程?不会用,愿闻其详

有个background控件,你搜搜怎么用,这是个线程控件,可以单独执行一个任务。
比如你用一个线程判断接收缓冲,只要缓冲区有数据,就保存到csv中。
发表于 2015-10-31 23:02:29 来自手机 | 显示全部楼层
本帖最后由 霸气侧漏 于 2015-10-31 23:22 编辑

有个问题,我做了一个按键,按下后就把combobox控件里的数据发送到串口,combobox数据是我下拉可以从1--100 中选一个数,比如我选择8   就发送AA 55  01  08  不知道怎么弄。

我定义一个byte
然后,string  data= comboBox.Text ;

然后把date 转成byte 在发送数据,但是运行后显示  值对于无字符字节太大或太小,不知道怎么弄,纠结
发表于 2015-11-2 08:37:34 来自手机 | 显示全部楼层
哈哈。搞定了
 楼主| 发表于 2015-11-5 20:41:00 | 显示全部楼层

嗯啊  搞定啦就好 这几天在出差了。
发表于 2015-11-5 20:55:20 | 显示全部楼层
天下乌鸦一般黑 发表于 2015-11-5 20:41
嗯啊  搞定啦就好 这几天在出差了。

    哈哈哈,搞定了
发表于 2015-11-23 23:01:35 | 显示全部楼层
真心不错,楼主加油。
发表于 2015-11-26 17:16:35 | 显示全部楼层
可不可做成接收两路串口,以不同颜色区分呢
发表于 2015-11-26 18:47:16 | 显示全部楼层
酷,谢谢分享。
 楼主| 发表于 2015-11-26 19:05:47 | 显示全部楼层
mcujack 发表于 2015-11-26 17:16
可不可做成接收两路串口,以不同颜色区分呢

没这么试过,不过感觉用多个串口没啥问题。
发表于 2015-12-2 01:00:01 | 显示全部楼层
蛮好的,学习了
发表于 2016-2-2 22:17:59 | 显示全部楼层
学习啦      
发表于 2016-2-2 22:24:14 | 显示全部楼层
看起来很酷!
 楼主| 发表于 2016-4-16 18:36:54 | 显示全部楼层

想起来当时测试用的是一个某宝买的叫10轴(带气压计的)的模块,型号是Gy-86,现在把测试程序一起贴上来吧,还是那样,有兴趣的凑合看下吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2016-4-16 19:30:38 来自手机 | 显示全部楼层
天下乌鸦一般黑 发表于 2016-4-16 18:36
想起来当时测试用的是一个某宝买的叫10轴(带气压计的)的模块,型号是Gy-86,现在把测试程序一起贴上来吧, ...

哈哈,当时程序参考你的代码,貌似有个bug.有时候打开串口收不到数据,然后在居然还能再打开一次串口,就收到数据。不是按一次打开,再按一次关闭么?
发表于 2016-4-16 19:31:22 来自手机 | 显示全部楼层
谢谢,学习学习,
 楼主| 发表于 2016-4-17 00:16:15 | 显示全部楼层
霸气侧漏 发表于 2016-4-16 19:30
哈哈,当时程序参考你的代码,貌似有个bug.有时候打开串口收不到数据,然后在居然还能再打开一次串口,就 ...

这个啊,不太清楚勒。最近重新做了个新的上位机,打印一些数据曲线啥的,很偶尔遇到个bug就卡死了~解决不了唉,凑合用了先。
发表于 2017-5-27 12:03:29 | 显示全部楼层
天下乌鸦一般黑 发表于 2016-4-17 00:16
这个啊,不太清楚勒。最近重新做了个新的上位机,打印一些数据曲线啥的,很偶尔遇到个bug就卡死了~解决不 ...

楼主,你的波形显示部分貌似有BUG,只能放大无法缩小?试了下,感觉波形的放大缩小没有控制规律啊,
 楼主| 发表于 2017-5-27 12:41:43 | 显示全部楼层
oner 发表于 2017-5-27 12:03
楼主,你的波形显示部分貌似有BUG,只能放大无法缩小?试了下,感觉波形的放大缩小没有控制规律啊, ...

放大缩小后表格的左侧和下侧有拖动条,拖动条旁边有个小圆点,可以点那个小圆点恢复。
发表于 2017-5-27 13:06:06 | 显示全部楼层
挺好的,学习一下
发表于 2017-5-31 13:41:44 | 显示全部楼层
软硬兼通啊楼主
发表于 2017-5-31 14:32:49 | 显示全部楼层
用来做四轴3D展示不错
发表于 2017-6-10 20:01:25 | 显示全部楼层
学习了,谢谢楼主!
发表于 2017-6-14 11:21:00 | 显示全部楼层
学习学习,找C#串口例子
发表于 2017-7-6 11:14:27 | 显示全部楼层
正好最近在学C#串口+chart做上位机,万分感谢楼主的分享了,下载下来拜读一下
发表于 2017-7-12 17:35:24 | 显示全部楼层
谢谢,学习学习
发表于 2017-8-1 15:18:56 | 显示全部楼层
最近公司要做一个测试用上位机,用C#获取串口数据,然后绘制成曲线图,在做分析,看来要把你的代码在看一遍, 现在在用chart控制,能实现绘图和X轴滚动条,继续努力
发表于 2017-8-1 15:50:00 | 显示全部楼层
天下乌鸦一般黑 发表于 2016-4-17 00:16
这个啊,不太清楚勒。最近重新做了个新的上位机,打印一些数据曲线啥的,很偶尔遇到个bug就卡死了~解决不 ...

哥们,最新的程序能不能上传,
 楼主| 发表于 2017-8-1 20:20:44 | 显示全部楼层
霸气侧漏 发表于 2017-8-1 15:50
哥们,最新的程序能不能上传,

不好意思额,现在给公司做设备的软件测试工装了,集成了很多配置,不太方便发出来了。代码没啥长进,还是这个样子。
发表于 2017-8-1 21:15:19 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-1 20:20
不好意思额,现在给公司做设备的软件测试工装了,集成了很多配置,不太方便发出来了。代码没啥长进,还是 ...

恩,理解理解,话说你是怎么学的,有没有好的教程,比如入门的资料等等
发表于 2017-8-1 21:21:18 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-1 20:20
不好意思额,现在给公司做设备的软件测试工装了,集成了很多配置,不太方便发出来了。代码没啥长进,还是 ...

有点不太明白,怎么封装一个函数,输入XY轴的坐标,就显示处波形图来
 楼主| 发表于 2017-8-1 21:24:44 | 显示全部楼层
串口通信参考的
http://blog.csdn.net/wuyazhe/article/details/5598945
chart就是瞎鼓捣的了,各种搜罗了~
顺便了解了下winform刷新界面如何和后台业务分离,委托啥的,不太会用线程,凑合用background控件做的,只要刷新曲线速度要求不高,能凑合用的。
 楼主| 发表于 2017-8-1 21:26:39 | 显示全部楼层
霸气侧漏 发表于 2017-8-1 21:15
恩,理解理解,话说你是怎么学的,有没有好的教程,比如入门的资料等等 ...

对啦,下载个Virtual Serial Port,调试串口好用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2017-8-1 21:29:31 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-1 21:26
对啦,下载个Virtual Serial Port,调试串口好用。

谢谢,串口通信已经搞定,能够当单片机用,虚拟串口也已使用。

现在的问题是,C#能够用,目前可以实现获取带协议的串口数据,然后保存位CSV文件,现在想做一个带波形显示的,遇到点问题,想做一个函数封装,把数组传入后,就能绘制一个波形文件出来
 楼主| 发表于 2017-8-1 21:36:47 | 显示全部楼层
霸气侧漏 发表于 2017-8-1 21:29
谢谢,串口通信已经搞定,能够当单片机用,虚拟串口也已使用。

现在的问题是,C#能够用,目前可以实现获 ...

额,我攒出来的,太深的不太懂了额。感觉直接把数据添加到到chart的画板上,这个网上也不少例程,没啥好办法,一个一个添加吧,开个定时器或者用串口报文来触发刷新就看需求了。
发表于 2017-8-1 21:43:38 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-1 21:36
额,我攒出来的,太深的不太懂了额。感觉直接把数据添加到到chart的画板上,这个网上也不少例程,没啥好 ...

好吧,先这样来弄,
今天做了一次性绘图,感觉还行,就是想封装成一个函数来用用
发表于 2017-8-3 09:14:21 | 显示全部楼层
我想在中断里面,不断的画曲线,用这个程序 ,提示  其他信息: “SeriesCollection”中找不到名为“Series0”的图表元素。这个不清楚为什么,但是你在chart里面有定义这个啊。



代码如下
Random ran = new Random();
  this.chartScope.Series["Series0"].Points.AddXY((double)Xpoints, ran.Next(100, 999));

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2017-8-3 10:05:31 | 显示全部楼层
霸气侧漏 发表于 2017-8-3 09:14
我想在中断里面,不断的画曲线,用这个程序 ,提示  其他信息: “SeriesCollection”中找不到名为“Series0 ...

this.chartScope.Series["Series0"].Points.AddXY((double)Xpoints, ran.Next(100, 999));
Series0需要在界面设计中添加到Series的成员列表中,没有添加的话当然找不到了。
发表于 2017-8-3 10:50:35 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-3 10:05
this.chartScope.Series["Series0"].Points.AddXY((double)Xpoints, ran.Next(100, 999));
Series0需要 ...

你看上面的截图,不是已经添加了么?这个还是要自己软件代码添加?

有点不太明白,我直接用的你的代码,按理已经添加
 楼主| 发表于 2017-8-3 11:25:10 | 显示全部楼层
霸气侧漏 发表于 2017-8-3 10:50
你看上面的截图,不是已经添加了么?这个还是要自己软件代码添加?

有点不太明白,我直接用的你的代码, ...

没有添加Series0 ,截图里添加的是Series1-10
发表于 2017-8-3 14:29:16 | 显示全部楼层
对了,你chartScope,曲线分析那个,里面可以绘制十个曲线。是不是只要在控件里设置好,就能直接用。 我是这样用的,但是感觉用的有些地方不对劲

            //清除默认的series
            chart2.Series.Clear();
              Series Strength5 = new Series("设定速度");
            Series Strength6 = new Series("流速");
            //设置chart的类型,这里为柱状图
            Strength5.ChartType = SeriesChartType.Spline;
            Strength6.ChartType = SeriesChartType.Spline;
            byte iTimeInterval = 1;
            chart2.ChartAreas["ChartArea1"].CursorX.AutoScroll = true;
            chart2.ChartAreas["ChartArea1"].AxisX.ScrollBar.Enabled = true;
            chart2.ChartAreas["ChartArea1"].CursorX.IsUserEnabled = true;
            chart2.ChartAreas["ChartArea1"].CursorX.IsUserSelectionEnabled = true;
            chart2.ChartAreas["ChartArea1"].AxisX.Interval = iTimeInterval;
            chart2.ChartAreas["ChartArea1"].AxisX.ScaleView.Zoomable = true;
            chart2.ChartAreas["ChartArea1"].AxisX.ScaleView.Position = 0;
            chart2.ChartAreas["ChartArea1"].AxisX.ScaleView.Size = iTimeInterval;
            //水平滚动条始终居于最右边            
            chart2.ChartAreas["ChartArea1"].AxisX.ScaleView.Scroll(ScrollType.Last);

            //把series添加到chart上
            chart2.Series.Add(Strength5);
            chart2.Series.Add(Strength6);
发表于 2017-8-3 14:38:40 | 显示全部楼层
对了,怎样把chart里面的所有曲线数据全清空, chart2.Series.Clear();设置完后,表格就什么都没有,尴尬,如果调用我楼上的程序,数据还是一样的
 楼主| 发表于 2017-8-3 15:10:48 | 显示全部楼层
霸气侧漏 发表于 2017-8-3 14:38
对了,怎样把chart里面的所有曲线数据全清空, chart2.Series.Clear();设置完后,表格就什么都没有,尴尬, ...

比如清除Series1,可以这样:

MSchart.Series["Series1"].Points.Clear();
发表于 2017-8-3 15:51:04 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-3 15:10
比如清除Series1,可以这样:

MSchart.Series["Series1"].Points.Clear();

清除完,显示一片空白,什么都没有,这怎么办
 楼主| 发表于 2017-8-3 17:12:26 | 显示全部楼层
霸气侧漏 发表于 2017-8-3 15:51
清除完,显示一片空白,什么都没有,这怎么办

啊,对了,清除了以后好像需要重新设置下,大概如下
                    MSchart.ChartAreas["ChartArea1"].AxisX.Maximum = 300;
                    MSchart.ChartAreas["ChartArea1"].AxisX.Minimum = 0;
                    MSchart.ChartAreas["ChartArea1"].AxisX.Interval = 60;
                    MSchart.ChartAreas["ChartArea1"].AxisX.LabelStyle.Interval = 60;
发表于 2017-8-3 17:49:19 | 显示全部楼层
天下乌鸦一般黑 发表于 2017-8-3 17:12
啊,对了,清除了以后好像需要重新设置下,大概如下
                    MSchart.ChartAreas["ChartArea ...

我去试试看,嘿嘿
发表于 2017-8-13 23:49:27 | 显示全部楼层
哥们 你好,遇到一个问题,要实现读取csv里的文件,数据的23.12345   小数点后有5位,
            private int g_r_set_speed = 0;
            string[] lines = File.ReadAllLines(dataAnalyseFilePath);
            string[] columns = lines[1].Split(',');
            columns = lines[1].Split(',');
            g_r_set_speed = Convert.ToInt32(columns[0], 10);   // 读取23.12345过后,会提示数据类型不对,但是不知道怎么处理,我要读取小数点后5位的数字,怎样做才比较好。

我想读取csv里的数据,但是数据都是小数点后面5位的数字,整数位最大是999.  放入一个变量用,用来做运算
 楼主| 发表于 2017-8-14 14:00:22 | 显示全部楼层
霸气侧漏 发表于 2017-8-13 23:49
哥们 你好,遇到一个问题,要实现读取csv里的文件,数据的23.12345   小数点后有5位,
            private ...

string str = "123.45678";
float tempfloat = float.Parse(str );
类似这样转试试。
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 粤ICP备09047143号 )

GMT+8, 2017-11-20 13:56

阿莫电子论坛, 原"中国电子开发网"

© 2004-2016 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表