java截取汉字字符串问题
如果说,“中国工商银行广东分行”这样的名称是每行报文的第一个出现的字符串,那么就很简单了,String name = line.split(” “)[0];//””里面的是一个空格. 这样就行了
如果不是每行报文中第一个出现的,那就这样:
String khmc = line.substring(100,130)
khmc = khmc.split(” “)[0];
这样也行
请教:JAVA中英文字符串截取的问题
//完整程序如下,字符串可以随机的:
import java.util.Iterator;
import java.util.Vector;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Grouping {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
String s = “a99中国b香港c恒生dd嘿嘿”;
String regex = “\\w”;
Pattern p = Pattern.compile(regex);
String intercept = “”;
String intercept2 = “”;
VectorString output = new VectorString();
for(int i = 0;i s.length();i ++){
String input = s.substring(i,i + 1);
Matcher m = p.matcher(input);
boolean b = m.matches();
if(b){
output.add(intercept2);
intercept2 = “”;
intercept = intercept + input;
}else{
output.add(intercept);
intercept = “”;
intercept2 = intercept2 + input;
}
}
//添加最后一串字符
if(intercept.equals(“”)){
output.add(intercept2);
}else{
output.add(intercept);
}
Iterator it = output.iterator();
System.out.println(“原始字符串为:” + s);
System.out.print(“分隔后的字符串为:”);
while(it.hasNext()){
System.out.print(((String)it.next()).trim());
if(it.hasNext()){
System.out.print(” “);
}
}
}
}
(java)如何获取字符串的字节数!
(java)如何获取字符串的字节数!, java怎样获取字符串的字节数
字符串是可以转变成字节数组,然后统计一下字节数组的长度即可,参考如下代码:
Java语言中,中文字符所占的字节数取决于字符的编码方式,一般情况下,采用ISO8859-1编码方式时,一个中文字符与一个英文字符一样只占1个字节;采用GB2312或GBK编码方式时,一个中文字符占2个字节;而采用UTF-8编码方式时,一个中文字符会占3个字节。
public static void main(String []args) throws UnsupportedEncodingException {
运行结果:2
System.out.println(“测试”.getBytes(“ISO8859-1”).length);
运行结果:4
System.out.println(“测试”.getBytes(“GB2312”).length);
运行结果:4
System.out.println(“测试”.getBytes(“GBK”).length);
运行结果:6
System.out.println(“测试”.getBytes(“UTF-8”).length);
}
c# 获取字符串的字节数
C#截取字符串字节数 代码如下:
public int bytelenght(string str)
{
byte[] bytestr = System.Text.Encoding.Unicode.GetBytes(str);
int j = 0;
for (int i = 0; i bytestr.GetLength(0); i++)
{
if (i % 2 == 0)
{
j++;
}
else
{
if (bytestr[i] 0)
{
j++;
}
}
}
return j;
}
谢谢采纳
c++ 怎样获取一串字符串的字符数,不是字节数
定义一个字符数组,然后根据字符长度循环得到字符
比如char ch[20];
这个20可以用字符实际长度getlength()获取
然后再循环获取字符
ch[i]
c#求字符串的字节数
其实用不着那么复杂计算的。注意:C#中string.Length只是计算字符串“字符”的个数,不计算字节;但是汉字两个字节+数字(英文字符)一个字节,才是6个,简单的代码如下: byte[] bytes = Encoding.Default.GetBytes(“1243我”); Default(根据自己究竟是汉字还是数字等,自动合理分配内存所需要的字节空间)
Console.WriteLine(bytes.Length);
C#如何获得存放字符串的字节数组?
byte[] System.Text.Encoding.Default.GetBytes(string s)
如何计算一个Unicode字符串的字节数
你就是一个byte一个byte读取的吧?一个汉字两个byte(不含surrogate情况),文件中存两个byte,你从文件中读取2个byte,就是这样 查看原帖
java下字符串和字节数组如何转换?
strRead = String.copyValueOf(strRead.toCharArray(), 0, byBuffer.length]); 2、字符串转换成字节数组 byte[] byBuffer = new byte[200]; byBuffer= strInput.getBytes();注意:如果字符串里面含有中文,要特别注意,在android系统下,默认是UTF8编码,一个中文字符相当于3个字节,只有gb2312下一个中文相当于2字节。
java 截取字符串第一个字符
使用substring() 方法返回字符串的子字符串。详细解析如下:
1、语法:
(1)public String substring(int beginIndex)。
(2)public String substring(int beginIndex, int endIndex)。
2、参数:
(1)beginIndex — 起始索引(包括), 索引从 0 开始。
(2)endIndex — 结束索引(不包括)。
3、返回值:
返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始,一直到索引 endIndex – 1处的字符。因此,该子字符串的长度为 endIndex-beginIndex。
4、substring函数存在的抛出错误:
IndexOutOfBoundsException – 如果 beginIndex 为负,或 endIndex 大于此 String 对象的长度,或 beginIndex 大于 endIndex。
5、实例代码如下:
以上程序执行结果为:
扩展资料:
通过split()+正则表达式来进行字符串截取:
将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。
例如:
运行结果:
参考资料:
百度百科–substring
java怎么把字符串中的的汉字取出来
1.判断字符串是否全是汉字。
String str1 = “java判断是否为汉字”
String str2 = “全为汉字”
String reg = “[\\u4e00-\\u9fa5]+”
boolean result1 = str1.matches(reg)//false
boolean result2 = str2.matches(reg)//true
2.提取字符串中的汉字。
String str = “java怎么把asdasd字符串中的asdasd的汉字取出来”
String reg = “[^\u4e00-\u9fa5]”
str = str.replaceAll(reg, ” “)
System.out.println(str)
3.判断字符串中是否含有汉字。
boolean result = (str.length() == str.getBytes().length)//true:无汉字 false:有汉字
4.获取字符串中汉字的个数。
int count = 0
String reg = “[\\u4e00-\\u9fa5]”
String str = “java获取汉字Chinese的个数”
Pattern p = Pattern.compile(reg)
Matcher m = p.matcher(str)
while (m.find()) {for (int i = 0; i = m.groupCount(); i++) {count = count + 1}}
System.out.println(“共有汉字 ” + count + “个 “)
java截取中文字符串。
public static void main(String args[])
{
String str=”看看以下回答是否解决了您的疑问” ;
//提取子字符串,头一个表示开头的索引(包括),后一个表示结束的索引(不包括)
//索引是在字符串的位置,从0开始
//str.substring(0, 7)表示从第0位到第6位(因为不包含第七位)
//英文字符串也是类似的
String substr = str.substring(0, 7) ;
System.out.println(substr);
}