java字符串读取代码 java 获取字符串编码

java中DataInputStream如何读取我们控制台的字符串

java中DataInputStream使用构造参数,使用bufferreader,输入参数system.in就可以读取控制台的字符串,如下代码:

成都创新互联专注于冀州网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供冀州营销型网站建设,冀州网站制作、冀州网页设计、冀州网站官网定制、小程序设计服务,打造冀州网络公司原创品牌,更为您提供冀州网站排名全网营销落地服务。

import java.io.BufferedInputStream;

import java.io.DataInputStream;

import java.io.IOException;

public class ceshi {

public static void main(String[] args) {

DataInputStream in = new DataInputStream(new BufferedInputStream(

System.in));//新建DateInputSteam,接收控制台的信息

String s;

try {

while ((s = in.readLine()).length() != 0)

System.out.println(s);//读取控制台信息,并打印出来

// An empty line terminates the program

} catch (IOException e) {

e.printStackTrace();

}

}

}

运行结果如下:

java写一个程序,读取一个字符串并输出该字符串所有的非空字符串

不知道是什么语言

不过都可以写函数判断,做个函数,输入字符串,输出修改后的字符串

然后函数里有一个字符串变量,用来存输出的结果

判断输入串的长度,从1到这个长度循环,没循环一次,输入的这个字符串就截掉以为,这样每个循环里面就可以都取这个串的第一位了,判断这位是不是数字,有的语言有函数可以判断,如果没有,那直接判断这个字符值是不是等于

-

9

当中的任何一个,麻烦点。如果不是数字,则把这个字符赋给新定义的变量,这个变量是一直累加的。最后循环结束,这个变量就是最终输出的值了。

java中根据一段字符串,获取其中的字母,有要求;求个具体代码

要求1中要去掉所有数字,要求2、3中又要保留数字并进行翻译,所以我两种都写了。具体代码为:

public class Test {

public static void main(String args[]) {

String str = "0as2sw$#3Six";

System.out.println("原字符串:[" + str + "]");

System.out.println("");

//不翻译数字

SetString set1 = new LinkedHashSet();

for (String s : str.split("[^A-Z a-z]")) {

if (s.length() 0) {

set1.add(s);

}

}

System.out.println("不翻译数字的结果:" + set1);

System.out.println("");

 /*因为又要去除非字母和数字(以下简称去杂),又要将去杂结果分离成数字和字母,再翻译数字,整个流程挺麻烦的,索性在去杂之前,先将数字翻译成英文,为了使数字翻译后的英文和原字符串的字母分开,在数字左右添加占位符#,这样的话,形如:[a1b2c3]就会被处理为:[a#one#b#two#c#three#],这样去杂后,就会被分割为:[a,one,b,two,c,three]了。这里定义了枚举值English,用于实现0-9的英文映射,[10]不好映射成[ten],现在只能映射为[one,zero],如果按照题干非要映射为ten的话你再考虑考虑吧*/

for (English english : English.values()) {

str = str.replaceAll(english.getNum() + "", "#" + english.name() + "#");

}

System.out.println("将数字替换为“占位符 + 英文 + 占位符”的中间结果:[" + str + "]");

System.out.println("");

 //翻译数字的结果

SetString set2 = new LinkedHashSet();

for (String s : str.split("[^A-Za-z]")) {

if (s.length() 0  ) {

//判断当前字符串是否是数字的英文,如果不是,就把它拆成单字母

if (mappingEnglish(s)){

set2.add(s);

}else {

for (char c : s.toCharArray()) {

set2.add(String.valueOf(c));

}

}

}

}

System.out.println("翻译数字的结果:" + set2);

}

//判断当前字符串是否是数字的英文

private static boolean mappingEnglish(String str) {

for (English english : English.values()) {

str = str.toLowerCase();

if (english.name().equals(str)) {

return true;

}

}

return false;

}

enum English {

zero(0),

one(1),

two(2),

three(3),

four(4),

five(5),

six(6),

seven(7),

eight(8),

nine(9);

private int num;

public int getNum() {

return num;

}

English(int num) {

this.num = num;

}

}

}

我怕发出来代码又挤在一起,顺便也截个图:

8-21行

22-50行

51-61行

62-85行完

运行结果:

java如何读取字符串中的某一段字符串

可以用substring方法来实现。

参考代码:

String str = "hello word!";

System.out.println(str.substring(1,4));

System.out.println(str.substring(3,5));

 System.out.println(str.substring(0,4));

将得到结果为:

ell

lo 

hell

如果startIndex和endIndex其中有越界的将会抛出越界异常。

String.substring(int beginIndex, int endIndex)

参数:

beginIndex 开始位置索引

endIndex    结束位置索引

返回:

从beginIndex位置到endIndex位置内的字符串


分享标题:java字符串读取代码 java 获取字符串编码
网页链接:http://cdiso.cn/article/dogidig.html

其他资讯