精华内容
下载资源
问答
  • 提问大神࿰c;我有一个dat数据c;挺大的࿰c;里边的数据数据头、数据体、数据头、数据体.......的形式࿰c;数据头里的数据字节不同࿰c;我要怎么把这个数据读出来呢?</p>
  • 在使用字节读取文本内容后,将读取内容打出到控制台,发现乱码。 但是将改文本文件内容复制到另一个文本文件中时,内容正常显示汉字。 FileInputStream fis =new FileInputStream("C:\\Users\\PCTC\\Desktop\\...

    在使用字节流读取文本内容后,将读取内容打出到控制台,发现乱码。
    但是将改文本文件内容复制到另一个文本文件中时,内容正常显示汉字。

     FileInputStream fis =new FileInputStream("C:\\Users\\PCTC\\Desktop\\file\\map.txt");
     FileOutputStream fos = new FileOutputStream("C:\\Users\\PCTC\\Desktop\\file\\map1.txt");
     	int by ;
                while ((by = fis.read()) != -1){
                    System.out.print((char)by);
                    fos.write(by);
                }
                fis.close();
                fos.close();
    

    因为复制文件时是读取一个字节写入一个字节。然后最终根据这些字节流拼成汉字。

    	一个汉字存储:
    	如果是GBK编码,占用2个字节
    	如果是UTF - 8编码,占用3个字节
    
    public static void main(String[] args)  throws UnsupportedEncodingException {
    
    //        String a = "abc";
    //        byte[] bys =a.getBytes();   //[97, 98, 99]
            String s = "中国";
    //        byte[] bys = s.getBytes();  [-28, -72, -83, -27, -101, -67]
    //        byte[] bys = s.getBytes("Utf-8");   [-28, -72, -83, -27, -101, -67]
            byte[] bys = s.getBytes("GBK");//[-42, -48, -71, -6]
            System.out.println(Arrays.toString(bys));
        }
    

    **

    采用何种规则编码,就要采用对应规则解码,否则就会出现乱码

    **

    		String s = "中国";
    		
            byte[] bys = s.getBytes("Utf-8"); 
            
            System.out.println(Arrays.toString(bys));
            
            String sa = new String(bys,"Utf-8");
            
            System.out.println(sa);
    

    输入结果为

    [-28, -72, -83, -27, -101, -67]

    中国

    展开全文
  • /* Read "n" bytes from a descriptor. */ readn(int fd, void *vptr, size_t n) { size_t nleft; ssize_t nread; char *ptr; ptr = vptr; nleft = n; while (nleft > 0) { if
    /* Read "n" bytes from a descriptor. */
    readn(int fd, void *vptr, size_t n)
    {
        size_t  nleft;
        ssize_t nread;
        char    *ptr;
    
        ptr = vptr;
        nleft = n;
        while (nleft > 0) {
            if ( (nread = read(fd, ptr, nleft)) < 0) {
                if (errno == EINTR)
                    nread = 0;      /* and call read() again */
                else
                    return(-1);
            } else if (nread == 0)
                break;              /* EOF */
    
            nleft -= nread;
            ptr   += nread;
        }
        return(n - nleft);      /* return >= 0 */
    }
    /* end readn */
    
    ssize_t
    Readn(int fd, void *ptr, size_t nbytes)
    {
        ssize_t     n;
    
        if ( (n = readn(fd, ptr, nbytes)) < 0)
            err_sys("readn error");
        return(n);
    }
    

    使用的时候使用函数Readn,Readn是个包裹函数,编程的时候就不需要对函数进行错误处理了。

    展开全文
  • import java.io.FileInputStream; import java.io.... * B:调用read()方法读取数据,并把数据显示在控制台 * C:释放资源 * * 读取数据的方式: * A:int read();一次读取一个字节 * B:int read(byt
    package cn.itcast_01;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    
    /*
     * 字节输入流操作对象
     * 
     * A:创建字节输入流对象
     * B:调用read()方法读取数据,并把数据显示在控制台
     * C:释放资源
     * 
     * 读取数据的方式:
     * A:int read();一次读取一个字节
     * B:int read(byte[] b)一次读取一个字节数组
     * 
     */
    public class FileInputStream读取数据 {
             public static void main(String[] args) throws IOException {
    			//FileInputStream(String name)
            	 FileInputStream fis = new FileInputStream("fis.txt");
            	 
    //        	 //调用read()方法读取数据,并把数据显示在控制台
    //        	 int by = fis.read();
    //        	 System.out.println(by);
    //        	 System.out.println((char)by);
    //        	 
    //        	 //第二次读取
    //        	 by = fis.read();
    //        	 System.out.println(by);
    //        	 System.out.println((char)by);
    //        	 
    //        	 //第三次读取
    //        	 by = fis.read();
    //        	 System.out.println(by);
    //        	 System.out.println((char)by);
    //        	 //我们发现代码的重复很高,所以我们要用循环改进
    //        	 //而用循环,最麻烦的事情是如何控制循环判断条件呢?
    
    //        	 //第四次读取
    //        	 by = fis.read();
    //        	 System.out.println(by);
    //             //通过测试,我们知道你读取的数据是-1,就说名读取到文件的末尾了
            	 
    //        	 //用循环改进
    //        	 int by = fis.read();
    //        	 while(by != -1) {
    //        		 System.out.print((char)by);
    //        		 by = fis.read();
    //        	 }
            	 
            	 //最终代码
            	 int by = 0;
            	 while((by = fis.read()) != -1) {
            		 System.out.println(by);
            	 }
            	 
            	 //释放资源
            	 fis.close();
    		}      
    }
    
    展开全文
  • 本应用笔记讨论了通过I2C兼容接口读取字节数据时需要特别注意的地方。介绍了每次读取一个字节时容易出现的问题,并给出了几个具体示例。本文也描述了进行数据传输的正确方法。 此内容为AET网站原创,未经授权禁止...
  • 摘要:本应用笔记讨论了通过I2C兼容接口读取字节数据时需要特别注意的地方。介绍了每次读取一个字节时容易出现的问题,并给出了几个具体示例。本文也描述了进行数据传输的正确方法。  概述  I2C兼容2线接口是...
  • import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; ...* 需求:把c:\a.txt内容复制到d:\b.txt中 ...* 数据源: * c:\a.txt – 读取数据 – FileInputS...

    package cn.itcast_04;

    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;

    /*
    * 需求:把c:\a.txt内容复制到d:\b.txt中
    *
    * 数据源:
    * c:\a.txt – 读取数据 – FileInputStream
    * 目的地:
    * d:\b.txt – 写出数据 – FileOutputStream
    */
    public class CopyFileDemo {
    public static void main(String[] args) throws IOException {
    // 封装数据源
    FileInputStream fis = new FileInputStream(“c:\a.txt”);
    FileOutputStream fos = new FileOutputStream(“d:\b.txt”);

    // 复制数据
    byte[] bys = new byte[1024];
    int len = 0;
    while ((len = fis.read(bys)) != -1) {
    fos.write(bys, 0, len);
    }

    // 释放资源
    fos.close();
    fis.close();
    }
    }

    展开全文
  • 摘要:本应用笔记讨论了通过I2C兼容接口读取字节数据时需要特别注意的地方。介绍了每次读取一个字节时容易出现的问题,并给出了几个具体示例。本文也描述了进行数据传输的正确方法。  概述  I2C兼容2线接口是...
  • 编写一程序P319.C实现以下功能 有一存储很多商品数据的二进制文件sp36.dat,每件商品的属性先后包括:品名(17字节的字符串)、规格(12字节的字符串)、数量(3字节的整数)、...这里怎么读取3个字节的整型数据啊?
  • linux C 串口gps数据读取,主要目的是获取GPS基本信息,要求精度不高,主要是获取日期,时间,经纬度。采用方法读取当前512字节数据,分析其中一句重要信息,获得所需要数据。
  • 然后遇到警告: C6385:从“buffer”中读取数据无效: 可读大小为“recv()`72”个字节,但可能读取了“25”个字节。 测试发现recv的返回值为25,着实不知道这个72字节哪来的。 网上查询也无果。 突然想尝试下将...
  • 大多数情况下,回复的数据帧最后的x个字节数据跑到了数据帧开头,将开头的x个字节数据覆盖了。 原因分析 检查代码后发现问题如下: 这段代码预期实现: 当执行一次read不能把fd里面的数据读取完毕,就会进入下一...
  • FileInputStream读取数据

    2018-09-14 21:21:57
    import java.io.FileInputStream; import java.io.IOException;...* B:调用read()方法读取数据,并把数据显示在控制台 * C:释放资源 * * 读取数据的方式: * A:int read():一次读取一个字节 ...
  • 读取Linux中I2C数据——c程序

    千次阅读 2018-04-18 21:54:34
    关于在Linux下读取I2C数据。该程序主要是在树莓派中读取AMG8833传感器中的64个温度数据,借鉴了一些网上的方法,然后参考芯片的数据手册,数据的存储格式,本芯片是2个字节存放一个数据。#include &lt;stdio.h&...
  • I2C向EEPROM读写多个字节数据(I2C硬件) 相关链接: I2C物理层介绍 I2C协议层介绍 I2C固件库介绍 STM32的I2C特性及架构介绍 STM32的EEPROM简介 I2C向EEPROM写入一字节数据(I2C硬件) I2C向EEPROM读取一字节数据(I...
  • LCD12864读取GDRAM数据...2.向GDRAM写入数据0x0A0C(执行完后显示器正确显示像素) 3.写GDRAM地址,选择第10行第7列的字 4.读取GDRAM数据,并在arduino串口监视器打印读取到的数据 代码: #include "TwkLiquidCrystalD
  • 读取数据的常用方法

    2017-05-22 22:38:28
    int Read() 读取一个字节数据 int read(byte[]b)将数据读取到字节数组中 void close() 关闭输入流 int available() 返回输入流读取的估计字节数 void write(int c)写入一个字节数据
  • package cn.itcast.io.c.bytestream.read; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class FileInput...
  • 其实就是这句C语言代码怎么解释: char c = 128; printf("%d\n", c); //输出-128 printf("%d\n", 128); //输出128 ... Int类型的128的二进制是1000 0000... 只能读取内存中的一个字节,而不能按照%d读取4个字节
  • package cn.itcast.io.c.bytestream.read; import java.io.File; import java.io.FileInputStream; import java.io.IOException; public class FileInputStreamDemo2 { /** * @param...
  • 从R1所指地址读取4字节数据到R0 为什么外接nor时cpu需要设置位宽,(nor的位宽可选由硬件引脚设置了) ldr R0, [0] 一、假设CPU用ldr需要获取4Byte数据,cpu的内存控制器外接的是16bit的nor flash, 内存控制器要...
  • IO流_FileInputStream读取数据

    千次阅读 2017-02-08 12:59:52
    import java.io.FileInputStream; import java.io.IOException; ... * B:调用read()方法读取数据,并把数据显示到控制台 * C:释放资源 * 读取数据方式: * A:int read():一次读取一个字节
  • C/C++逐行读取文本文件的数据

    千次阅读 2017-10-08 13:14:25
    C++: 函数声明: ssize_t getline(char ...成功,则返回(有符号整型)每行的字节数,包含结束符;否则返回-1   例子: #include #include #include #include #include #include #include using names
  • 读取数据文件

    2015-05-10 11:22:00
    /* 以 Stream后缀结尾 的都为 字节流, 而以Reader或Writer后缀结尾的叫做字符流 */ class TestFileReaderWriter { public void copyfile() { int c = 0; try { BufferedReader ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,267
精华内容 506
关键字:

c读取字节数据