扩展阅读
  • java命名空间java.lang.management类managementfactory的类成员方法: getoperatingsystemmxbean定义及介绍
  • java.util.Date 和 java.slq.Date 如何最简单实现互换?
  • java命名空间java.lang.management接口memorypoolmxbean的类成员方法: isvalid定义及介绍
  • 轻量级Java开发工具 Java Tools
  • java命名空间java.lang.management接口threadmxbean的类成员方法: isthreadcputimesupported定义及介绍
  • 在下初学java,请各位大虾推荐几个java学习网站吧!
  • java命名空间java.lang.management接口memorymanagermxbean的类成员方法: isvalid定义及介绍
  • 各位大虾,为什么我的java程序能通过编译,但是在用java命令运行程序的时候却老是报错“Exception in thread "main" java.lang.NoClassDe
  • java命名空间java.awt.image接口imageobserver的类成员方法: properties定义及介绍
  • 请问:java 入门以及学好Java要看哪些书籍阿????
  • java命名空间java.sql类types的类成员方法: other定义及介绍
  • Java源码工具 java2html
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • java bean和java class的区别??
  • java命名空间java.awt类color的类成员方法: gettransparency定义及介绍
  • 学习JAVA,请推荐好的 JAVA站点!
  • java命名空间java.lang.management类memoryusage的类成员方法: getcommitted定义及介绍
  • 关于Java好的网站,哪个Java好的教程。
  • java命名空间java.text类decimalformat的类成员方法: setparsebigdecimal定义及介绍
  • 如何将java.util.Date转化成java.sql.Date?
  • java命名空间java.awt类toolkit的类成员方法: createcomponent定义及介绍
  • 如何设置java应用程序的风格,如java风格,和windows风格!
  •  
    当前位置:  编程语言>java/jsp

    java命名空间java.io接口datainput的类成员方法: readutf定义及介绍

     
        发布时间:2014-2-17  


        本文导语:  readutf string readutf() throws ioexception 读入一个已使用 utf-8 修改版格式编码的字符串。readutf 的常规协定是:该方法读取使用 utf-8 修改版格式编码的 unicode 字符串的表示形式;然后以 string 的形式返回此字符串。 首先...

    readutf

    string readutf()
                   throws ioexception
    读入一个已使用 utf-8 修改版格式编码Java命名规则详细总结 iis7站长之家readutf 的常规协定是:该方法读取使用 utf-8 修改版格式编码的 unicode 字符串的表示形式;然后以 string 的形式返回此字符串。

    首先读取两个字节,并使用它们构造一个无符号 16 位整数,构造方式与 readunsignedshort 方法的方式完全相同。该整数值被称为 utf 长度,它指定要读取的额外字节数。然后成组地将这些字节转换字符。每组的长度根据该组第一个字节的值计算。紧跟在某个组后面的字节(如果有)是下一组的第一个字节。

    如果组的第一个字节与位模式 0xxxxxxx(其中 x 表示“可能为 01”)匹配,则该组只有这一个字节。该字节被左侧补零,转换成一个字符。

    如果组的第一个字节与位模式 110xxxxx 匹配,则该组只由字节 a 和另一个字节 b 组成。如果没有字节 b(因为字节 a 是要读取的最后一个字节),或者字节 b 与位模式 10xxxxxx 不匹配,则抛出 utfdataformatexception。否则,将该组转换成字符:

    (char)(((a& 0x1f) << 6) | (b & 0x3f))
     
    如果组的第一个字节与位模式 1110xxxx 匹配,则该组由字节 a 和另外两个字节 bc 组成。如果没有字节 c(因为字节 a 是要读取的最后两个字节之一),或者字节 b 或字节 c 与位模式 10xxxxxx 不匹配,则抛出 utfdataformatexception。否则,将该组转换成字符:

    
     (char)(((a & 0x0f) << 12) | ((b & 0x3f) << 6) | (c & 0x3f))
     
    如果组的第一个字节与模式 1111xxxx 或模式 10xxxxxx 匹配,则抛出 utfdataformatexception

    如果在执行整个过程中的任意时间到达文件末尾,则抛出 eofexception

    在通过此过程将每个组转换成字符后,按照从输入流中读取相应组的顺序,将这些字符收集在一起,形成一个 string,然后该字符串将被返回。

    可以使用 dataoutput 接口writeutf 方法写入适合此方法读取的数据

    返回:
    一个 unicode 字符串。
    抛出:
    eofexception - 如果此流在读取所有字节之前到达末尾。
    ioexception - 如果发生 i/o 错误
    utfdataformatexception - 如果这些字节不表示一个有效的、utf-8 修改版编码的字符串。
    相关文章推荐:
  • java命名空间java.text接口attributedcharacteriterator的类成员方法: getattribute定义及介绍
  • java文件重命名(文件批量重命名)实例程序代码分享
  • java命名空间java.beans接口propertyeditor的类成员方法: getvalue定义及介绍
  • java 命名空间 命名规则第1/2页
  • java命名空间java.awt类container的类成员方法: getlayout定义及介绍
  • Linux 下 java 的File类的renameTo()方法 不能重命名文件
  • java命名空间java.beans类defaultpersistencedelegate的类成员方法: defaultpersistencedelegate定义及介绍
  • Java命名规则详细总结
  • java命名空间java.text类decimalformat的类成员方法: topattern定义及介绍
  • Java Web项目前端规范(采用命名空间使js深度解耦合)
  • java命名空间java.sql类types的类成员方法: null定义及介绍
  • java的命名规则默认是不是匈牙利命名法?
  • java命名空间java.awt类awtevent的类成员方法: id定义及介绍
  • java开发命名规范总结
  • java命名空间java.text类choiceformat的类成员方法: choiceformat定义及介绍
  • Java实现文件批量重命名具体实例
  • java命名空间java.sql类driverpropertyinfo的类成员方法: value定义及介绍
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: isrepresentationclassinputstream定义及介绍
  • java命名空间java.text类decimalformat的类成员方法: tolocalizedpattern定义及介绍
  • java命名空间java.sql类types的类成员方法: binary定义及介绍
  • java命名空间java.sql类types的类成员方法: float定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3