使用C#处理基于比特流的数据 0x00 起因最近需要处理一些基于比特流的数据,计算机处理数据一般都是以byte(8bit)为单位的,使用BinaryReader读取的数据也是如此,即使读取bool型也是一个byte。不过借助于C#基础类库中提供的一些方法,也实现了对基于比特的数据的读取。任务完成后觉得基于比特的数据挺有意思,自己试了下用7比特和6比特编码常用ASCII字符。最后把一点新的写成博客,一方面做个记录,另一方面希望对有类似需求的园友...
使用DataSet对象访问数据库 当对DataSet对象进行操作时,DataSet对象会产生副本,所以对DataSet里的数据进行编辑操作不会直接对数据库产生影响,而是将DataRow的状态设置为added、deleted或changed,最终的更新数据源动作将通过DataAdapter对象的update方法来完成。 DataSet对象的常用方法如下。void AcceptChanges():该方法用来提交DataSet里的数据变化。void clear():该方法用来清空DataSet里的内容。DataSet copy():该...
方法1:将图片复制到指定文件夹,在数据库中存储图片路径,通过读取路径来显示图片。string str;privatevoid toolStripButton1_Click(object sender, EventArgs e){if (openFileDialog1.ShowDialog() == DialogResult.OK){str = openFileDialog1.FileName;pictureBox1.Image = Image.FromFile(str);}}//打开文件并在PictureBox中显示图片privatevoid toolStripButton2_Click(object sender, EventArgs e){string filename = DateTi...
1.在用windows模式登陆sql server 数据库 简历一个student的数据库,然后新建查询:createtable student
(id int auto_increment primarykey,name char(10) notnull,sex char(10) notnull,age char(10) notnull,
)2.在vs中新建一个项目,输入一下代码:using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data...
串口通信:在使用TextBox空间显示数据时,因为要显示大量的接收到的数据,当数据量大且快速(串口1ms发送一条数据)时,使用+=的方式仍然会造成界面的卡顿(已使用多线程处理),但使用AppendText效果就会好一点。 代码: public void DataReceThread(System.Windows.Forms.TextBox textBox, Tcp tcp) { byte[] bytes; int length = 0; Thread dataThread = new Thread(delegate() ...
用第三方组件:NPOI来实现先去官网:http://npoi.codeplex.com/下载需要引入dll(可以选择.net2.0或者.net4.0的dll),然后在网站中添加引用。使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写。创建一个实体类:[Table("Customer") ]publicclass Customer{[Key]publicint Id { get; set; }publicstring FirstName { get; set; }publicstring LastName { get; set; }publicint Age { get; set...
问题描述: 原数据---------需要在原视图数据中,统计出每个Device_Num设备号下面的交易的总额和分别统计出微信支付宝的交易总额。解决:从上图数据没办法使用直接查询出要求的数据。 .1.首先查出满足需要的数据的类型,并进行分组SELECT SUM(Amount) as TotleAmount ,Trade_type ,Device_Num FROM patientbookstatices GROUP BY Device_Num ,Trade_type; 得到数据:还是无法查出按要求的数据,2.我们以上图数据作...
///<summary>/// 数据表转键值对集合/// 把DataTable转成 List集合, 存每一行 /// 集合中放的是键值对字典,存每一列 ,键/值相同///</summary>///<param name="dt">数据表</param>///<returns>哈希表数组</returns>publicstatic List<Dictionary<string, object>> DataToList(DataTable dt){List<Dictionary<string, object>> list = new List<Dictionary<string, object>>();foreach (DataRow dr in dt.Rows){Dictionary<string, ...
一:引用MySQL使用基于Parameter方式代码,总是提示:“Column ‘列名‘cannot be null”解决 MySQL使用基于Parameter方式代码,总是提示:“Column ‘列名‘ cannot be null” 解决方法1:直接在连接字符串里面加一个 oldsyntax=true 即可。 例如:
?1server=127.0.0.1;userid=root;password=;database=itemdb;oldsyntax=true 解决方法2:将语句中的 @ 替换为 ? 例如: ?1234567891011121314151617StringBuilder strSql=new Strin...
SqlConnection:对SQL Server 数据库的连接构造函数:SqlConnection(): 初始化 SqlConnection 类的新实例。方法:Open(): 打开一个数据库连接CreateCommand(): 创建并返回与 SqlConnection 关联的 SqlCommand 对象BeginTransaction():开始数据库事务SqlCommand:对SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程属性:CommandTimeout: 获取或设置在终止尝试执行命令并生成错误之前的等待时,默认值为 30 秒SqlTr...
//把文件转成二进制流出入数据库private void button2_Click(object sender, EventArgs e){ FileStream fs = new FileStream(textBox1.Text, FileMode.Open); BinaryReader br = new BinaryReader(fs); Byte[] byData = br.ReadBytes((int)fs.Length); fs.Close(); string conn = "server=.;database=testDB;Uid=sa;Pwd=sa "; SqlConnection myconn = new SqlConnection(conn); myconn.Open(); string str = "insert into pro_tabl...
http://www.cnblogs.com/abatei/archive/2008/06/06/1215114.html8.2 图的存储结构图的存储结构除了要存储图中各个顶点的本身的信息外,同时还要存储顶点与顶点之间的所有关系(边的信息),因此,图的结构比较复杂,很难以数据元素在存储区中的物理位置来表示元素之间的关系,但也正是由于其任意的特性,故物理表示方法很多。常用的图的存储结构有邻接矩阵、邻接表、十字链表和邻接多重表。8.2.1 邻接矩阵表示法对于一个具有n个顶...
代码生成器进行了改进,针对Oracle数据库生成更优美的代码。这样生成出来的代码,更像微软的风格,更像C#.NET的标准规范,阅读起来也更优美。把Oracle表字段名默认大写, 有_分割等进行了优化,这样用我们代码生成器生成的代码,阅读起来,更顺眼。更能拿得出手了。代码生成器生成代码效率高、规范性强、错误少、质量可靠。EF 生成的 Oracle 底层数据库的SQL语句性能不能有保障、在大并发大用户时会有很多不确定因素、甚至优化起来...
在c#中关于udp实现可靠地传输(数据包的分组发送) 中我们讨论了,UDP包的发送,但是上一个程序有一个问题,就是数据比较大,一个Message类序列化后都有2048B,而实际的数据量也就不过 50B罢了,这就说明其中数据有效的很少,这样当传送的数据包过多后,效率会极大的降低。因此我们只有想办法减少冗余数据。此项目中借用了飞鸽传书中的一个《FSLib.IPMessager》项目中的思想,并加以改善,感谢此项目作者,让我对此有了深刻的理解我们...
本示例以植物大战僵尸为例, 实现功能为 每1秒让阳光刷新为 9999.本示例使用的游戏版本为 [植物大战僵尸2010年度版], 使用的辅助查看内存地址的工具是 CE.由于每次启动游戏, 游戏中阳光地址都是变的, 唯一不变的基址1, 我们要通过CE工具找到基址1的地址, 可以算出阳光的地址.基址2的地址 = 基址1中的值 + 偏移1;阳光的的地址 = 基址2中的值 + 偏移2;以下为简单示例: 窗口界面一个按钮 和 一个定时器using System;
using System.Co...