- 浏览: 222516 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
junzi2013:
df
黑马程序员:MyEclipse9 常用快捷键 中英文对照 及 快速get set方法 -
junzi2013:
dfsdafadsfsd
黑马程序员:MyEclipse9 常用快捷键 中英文对照 及 快速get set方法 -
idealab:
博主说的OpenCSV, JavaCSV, SuperCSV都 ...
csv调研 -
tanxin:
楼主怎么解决这个问题的呢?
坑爹的zookeer -
yy22258867:
:twisted:
黑马程序员19-7:foreach遍历核心源码,遍历HashMap需要用map.keySet()或map.entrySet()
package cn.itcast.io.p7.encode; import java.io.IOException; import java.io.UnsupportedEncodingException; public class EncodeDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * 字符串 --> 字节数组:编码。 * 字节数组 --> 字符串:解码。 * * 你好:GBK: -60 -29 -70 -61 * * 你好: utf-8: -28 -67 -96 -27 -91 -67 * * * 如果你编错了,解不出来。 * 如果编对了,解错了,有可能有救。 */ String str = "谢谢"; byte[] buf = str.getBytes("gbk"); String s1 = new String(buf,"UTF-8"); System.out.println("s1="+s1); byte[] buf2 = s1.getBytes("UTF-8");//获取源字节. printBytes(buf2);//-17 -65 -67 -17 -65 -67 -17 -65 -67 //-17 -65 -67 -17 -65 -67 -17 -65 -67 -17 -65 -67 //-48 -69 -48 -69 String s2 = new String(buf2,"GBK"); System.out.println("s2="+s2); // encodeDemo(str); } /** * @param str * @throws UnsupportedEncodingException */ public static void encodeDemo(String str) throws UnsupportedEncodingException { //编码; byte[] buf = str.getBytes("UTF-8"); // printBytes(buf); //解码: String s1 = new String(buf,"UTF-8"); System.out.println("s1="+s1); } private static void printBytes(byte[] buf) { for(byte b : buf){ System.out.print(b +" "); } } }
package cn.itcast.io.p7.encode; import java.io.IOException; import java.io.UnsupportedEncodingException; public class LianTong { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { String str = "jͨ"; /* 11000001 10101010 11001101 10101000 */ byte[] buf = str.getBytes("gbk"); for(byte b :buf){ System.out.println(Integer.toBinaryString(b&255)); } } }
package cn.itcast.io.p7.encode; import java.io.IOException; public class Test { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { String str = "ab你好cd谢谢"; // str = "ab琲琲cd琲琲"; // int len = str.getBytes("gbk").length; // for(int x=0; x<len; x++){ // System.out.println("截取"+(x+1)+"个字节结果是:"+cutStringByByte(str, x+1)); // } int len = str.getBytes("utf-8").length; for(int x=0; x<len; x++){ System.out.println("截取"+(x+1)+"个字节结果是:"+cutStringByU8Byte(str, x+1)); } // String str = "琲"; // byte[] buf = str.getBytes("gbk"); // for(byte b : buf){ // System.out.println(b);//-84 105 // } } /* 在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符。 但对应的字节数不同,一个汉字占两个字节。 定义一个方法,按照最大的字节数来取子串。 如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个, 那么半个就要舍弃。如果去四个字节就是“ab你”,取五个字节还是“ab你”. */ public static String cutStringByU8Byte(String str, int len) throws IOException { byte[] buf = str.getBytes("utf-8"); int count = 0; for(int x=len-1; x>=0; x--){ if(buf[x]<0) count++; else break; } if(count%3==0) return new String(buf,0,len,"utf-8"); else if(count%3==1) return new String(buf,0,len-1,"utf-8"); else return new String(buf,0,len-2,"utf-8"); } public static String cutStringByByte(String str,int len) throws IOException{ byte[] buf = str.getBytes("gbk"); int count = 0; for(int x=len-1; x>=0; x--){ if(buf[x]<0) count++; else break; } if(count%2==0) return new String(buf,0,len,"gbk"); else return new String(buf,0,len-1,"gbk"); } }
详细请查看:http://edu.csdn.net/heima -------
发表评论
-
Java中的IO整理完整版
2013-02-15 17:23 704http://developer.51cto.com/art/ ... -
Myeclipse中导入zip文件查看源代码
2012-09-21 23:35 1053用Myeclipse的时候,出现无法查看源码的话,导入jdk文 ... -
==与equals
2012-09-13 20:15 652一般基本数据类型的比较用 == 当涉及到对象、字符串的时候,就 ... -
多线程课程002:线程范围内的共享变量
2012-09-13 16:47 952package cn.itcast.heima2; ... -
多线程课程001:线程安全的问题
2012-09-13 14:37 810下面的做法,会发现输出结果被打断了。 package co ... -
多线程课程001:线程安全的问题
2012-09-13 11:14 791package com.lee.thread; pu ... -
内部类的实际应用
2012-09-13 11:01 666public class TraditionalThreadS ... -
Java接口
2012-09-11 12:07 763Java接口的方法只能是抽象的和公开的,Java接口不能有构造 ... -
移位运算符
2012-09-11 09:31 842移位运算符 <<左移 a<<b,a转 ... -
【总结】gridbaglayout布局管理器
2012-08-15 11:19 692http://blog.sina.com.cn/s/blog_ ... -
【练习_00010】java不重复随机数
2012-08-14 01:26 698package com.heima.test; impo ... -
【练习】判断一个字符串中某些字段出现的次数
2012-08-14 01:08 973package com.heima.test; im ... -
选择、冒泡、折半排序查找方法
2012-08-13 15:06 1217import java.util.Arrays; i ... -
自己写的杨辉三角
2012-08-12 16:41 805package com.lee.graphic; p ... -
交换两个数的位置,不用中间变量
2012-08-06 02:28 1112a ^= b; b ^= a; a ^= b; 1 ... -
未解问题,定时器无法自定义切换时间
2012-07-30 18:08 1009package com.heima.test004.enu ... -
黑马程序员:设计模式,享元模式flyweight
2012-07-23 02:13 0如果有很多很小的东西,对象,当他们有很多属性是相同的,就可以把 ... -
黑马程序员:for综合图形整合结晶
2012-07-23 01:16 800package Graph; public clas ... -
JS: js获取字符串长度
2012-07-20 18:01 0<SCRIPT LANGUAGE="Jav ... -
传智27-2: 模拟Tocat浏览器,写网页蜘蛛爬虫,抓取网页信息
2012-07-12 17:03 0package cn.itcast.net.p2.ie_s ...
相关推荐
### 如何处理错误ORA-29275:部分多字节字符 #### 问题背景与描述 在Oracle数据库操作过程中,用户可能会遇到一个特定的错误提示——ORA-29275:部分多字节字符。这一错误通常出现在执行查询`SELECT * FROM V$...
在C#编程中,有时我们需要根据字节长度来截取字符串,这可能是因为要处理不同编码格式的数据,或者为了适应特定的传输限制。本篇将详细介绍如何在C#中按照字节长度截取字符串,并结合正则表达式进行操作。 首先,...
在ASP.NET C#开发环境中,处理字符串是一项常见且重要的任务,尤其是在需要对字符串进行精确控制的情况下,如按字节截取字符串。本文将详细介绍如何为C#中的`String`类添加一个扩展方法,该方法允许我们按照字节而非...
本文实例讲述了Go语言按字节截取字符串的方法。分享给大家供大家参考。具体实现方法如下: 代码如下:// 按字节截取字符串 utf-8不乱码 func SubstrByByte(str string, length int) string { bs := []byte(str)[:...
### 字符串截取按字节:深入解析与实践 在计算机编程中,字符串处理是一项基本而关键的任务,尤其在处理非英文字符时,如何精确地按照字节进行字符串截取变得尤为重要。本文将深入探讨一种按字节截取字符串的方法,...
由于计算机内部存储和处理的都是二进制数据,对于非英文字符,在不同的编码(如UTF-8、GBK)下占用的字节数是不同的,因此直接按字符截取往往不能满足需求。本文旨在介绍如何利用Java语言按照字节截取字符串,并给出...
在上述代码中,我们首先将字符串转换为UTF-8编码的字节数组,然后截取所需的字节数量,最后再将截取的字节数组转换回字符串。这种方法可以确保即使在处理汉字时也能正确截取字符串。 需要注意的是,不同编码方式...
总结来说,“按byte截取字符串”是一项实用的技术,涉及到字符串编码、字节数组操作以及对Java语言特性的深入理解。在实际开发中,掌握这项技能对于处理与字节流相关的任务至关重要,尤其是在处理网络数据传输、文件...
字符串是由字符组成的序列,而“字符串按照指定的字节数来截取”这个话题,就是指如何在字符串中提取固定字节数的部分。在不同的编程语言中,都有相应的函数或方法来实现这一功能。 在Python中,可以使用内置的`...
实现一个按字节来截取字符串的方法,功能类似于string类的substring方法,String类是按字符截取 的,例如"中国abc".substring(1,3),将返回“国a”。这里 要求按字节截取,一个英文字符当一个字节,一个中文字符当两...
总结来说,根据字节数截取字符串涉及到的关键技术包括字符串与字节数组的转换、字符编码的理解以及字符边界定位。`SplitString.java`文件很可能是实现这个功能的一个具体实例,通过阅读和理解这段代码,开发者可以更...
在处理通信数据时,我们经常需要对字符和字符串进行操作,例如将字符转换为字符串,或者从字符串中截取有效字符。以下将详细介绍在TIA博途中如何实现这些操作。 首先,字符转换为字符串的过程通常涉及到ASCII码。...
- PostalCode:邮政编码,可变长度的字符串,20个字符,不允许空。 - Country:国家,可变长度的字符串,30个字符,不允许空。 - Phone:电话,可变长度的字符串,48个字符,不允许空。 - Fax:传真,可变长度的...
在IT行业中,处理字符串是常见...总的来说,按字节长度截取带有HTML代码的字符串是一个需要细心处理的问题,需要考虑到编码、HTML结构和潜在的不完整标签。通过自定义函数或使用第三方库,我们可以有效地解决这个问题。
7. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉...
4. **字符串操作**:包括查找、替换、截取等基本字符串操作,这些操作都考虑到UTF-8的特性,确保不会破坏多字节字符。 5. **错误处理**:在进行操作时,该库会提供详细的错误报告,帮助开发者追踪和修复编码问题。 ...
一般截取字符串是按照字符截取的,现在这个代码是按照字节截取字符
Java 字符串截取函数 ...本例中,我们实现了一个 Java 字符串截取函数,该函数可以截取指定字节的字符串,并保证汉字不被截半个。该函数使用 `substring` 方法来实现字符串截取,并且可以应用于各种字符串处理场景。
根据给定的文件信息,我们可以总结出以下关于C#中的字符串截取的相关知识点: ### C#字符串截取方法概述 在C#编程语言中,字符串处理是非常常见的需求之一,尤其是在Web开发、桌面应用开发以及数据处理等领域。...