精华内容
下载资源
问答
  • JAVA ASCII码 读入字符串测试       public class RhzfYunTest {  public static void main(String[] args) {    int lenSize =6;  byte[] line = (byte[])null;  byte[] lenBuffer = new byte...

    JAVA ASCII码 读入字符串测试

     

     

     

    public class RhzfYunTest {

     public static void main(String[] args) {
     
         int lenSize =6;
         byte[] line = (byte[])null;
         byte[] lenBuffer = new byte[lenSize];
         String readLine = null;

         int messageLength;
        
       
       //  lenBuffer[0] = (byte)63;// ?  ascii 是63  48 对应 0    57 对应 9
         lenBuffer[0] = (byte)63;// ?  ascii 是63  48 对应 0    57 对应 9
         lenBuffer[1] = (byte)63;
         lenBuffer[2] = (byte)63;
         lenBuffer[3] = (byte)32;// 32 对应空字符
         lenBuffer[4] = (byte)32;
         lenBuffer[5] = (byte)32;
       
         System.out.println ("Service socketReceiveMsgServe() received messageLength is " + new String(lenBuffer));
      
         messageLength = Integer.valueOf((new String(lenBuffer)).trim()).intValue();
         System.out.println ("messageLength : "+ messageLength);
        
      
     }
        
        
     }

     

    运行结果

    Service socketReceiveMsgServe() received messageLength is ???  
    Exception in thread "main" java.lang.NumberFormatException: For input string: "???"
     at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
     at java.lang.Integer.parseInt(Integer.java:580)
     at java.lang.Integer.valueOf(Integer.java:766)
     at com.idea.rhzf.RhzfYunTest.main(RhzfYunTest.java:25)

     

     

     

    展开全文
  • 一直习惯了使用next()方法读取字符串,今天遇到需要每次读取一行数据的需求,于是便想到了使用nextLine()方法。但使用的时候发现问题出现了,使用nextLine读取的字符串为空。一起通过下面这个例子来看下。 输入...

    一直习惯了使用next()方法读取字符串,今天遇到需要每次读取一行数据的需求,于是便想到了使用nextLine()方法。但使用的时候发现问题出现了,使用nextLine读取的字符串为空。一起通过下面这个例子来看下。

    输入描述 

     第一行输入一个整数N,表示字符串的数量。接下来的N行每行输入一个字符串。如

    3
    abc
    def
    hij

     

    输出描述

    每读到一个字符串将其打印输出 

    是不是觉得很简单?那我们来实现以下 

    package leetcode.stack;
    
    import java.util.Scanner;
    
    /**
     * @基本功能:
     * @program:summary
     * @author:peicc
     * @create:2019-10-07 11:11:22
     **/
    public class TestNextLine {
        public static void main(String[] args) {
            Scanner sc=new Scanner(System.in);
            int N=sc.nextInt();//读取整数N
            for (int i = 0; i <N ; i++) {
                String str=sc.nextLine();//每次读取一行字符串
                System.out.println(str);
            }
        }
    }
    

    貌似跟想象中的有点不一样!!!第一个字符串的内容应该为abc,可输出的却为空。第二个字符串本应该为def,结果却输出了abc。第三个字符串本应该为hij,结果是def。而hij直接没输出就结束了。 这是怎么回事?我们仔细观察就会发现,虽然输出结果跟预期不一样,但有一点还是没问题的,那就是最终还是输出了三个字符串,只不过每个字符串的内容跟我们想的不一样。但规律也很好发现,就是一个字符串为空,接下来的字符串都是正常输出的前一个字符串。那么我们就会问了,为什么第一个字符串为空?这就需要从nextInt()方法与nextLine()方法 的区别去分析了。

    next()与nextLine()的区别 

    • next()方法在读取内容时,会过滤掉有效字符前面的无效字符,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其过滤掉;只有在读取到有效字符之后,next()方法才将其后的空格键、Tab键或Enter键等视为结束符;所以next()方法不能得到带空格的字符串。
    • nextLine()方法字面上有扫描一整行的意思,它的结束符只能是Enter键,即nextLine()方法返回的是Enter键之前没有被读取的所有字符,它是可以得到带空格的字符串的。
    • next()方法在扫描到空白符的时候会将前面的数据读取走,但会丢下空白符“\r”在缓冲区中
    • nextLine()方法在扫描的时候会将扫描到的空白符一同清理掉

    了解了上述区别后,我们就很好理解上面程序的运行结果了。首先通过nextInt()方法读取字符串的行数,但此时读取了N之后,N之后的换行符还在缓冲区中,此时当我们在for循环中第一次调用nextLine()方法时,读取的是N之后的换行符以及换行符之前没被读取的值,也就是空。故第一个字符串的内容为空。紧接着,第二次调用nextLine()方法时,读取的便是abc及其之后的换行符,第三次调用nextLine()方法时,读取的是def及其之后的换行符。循环了三次,结束循环,因此最后的hij便没有读取得机会。 

     

    展开全文
  • split() 方法可以根据匹配给定的正则表达式来拆分字符串 public String[] split(String regex, int limit) //regex为正则表达式 //limit为切割份数 实例: String s0; try (BufferedReader br = new ...

    使用splist()方法

    • split() 方法可以根据匹配给定的正则表达式来拆分字符串
    public String[] split(String regex, int limit)
    //regex为正则表达式
    //limit为切割份数
    

    实例:

     	String  s0;
       try (BufferedReader br = new BufferedReader(new FileReader("test.txt")))	/从test.txt中读入
            {
             while((s0 = br.readLine()) != null)
             {
                String arr1[] = s0.split(" ");	//按空格将其分割并返回到数组arr1中
    
    展开全文
  • 解决java中nextLine()无法读入字符串的问题。 这是楼主最近写的一段代码: 这是输出,然而楼主发现, 中的in.nextLine()并没有接受接盘输入,而是直接跳过!! 是什么原因呢?? 1.Scanner 的输入机制: ...

    解决java中nextLine()无法读入字符串的问题。

    这是楼主最近写的一段代码:

    这是输出,然而楼主发现,

    中的in.nextLine()并没有接受接盘输入,而是直接跳过!!

    是什么原因呢??

    1.Scanner 的输入机制:

    首先,Scanner是一个扫描器,它扫描数据都是去内存中一块缓冲区中进行扫描并读入数据的,而我们在控制台中输入的数据也都是被先存入缓冲区中等待扫描器的扫描读取。这个扫描器在扫描过程中判断停止的依据就是“空白符”,空格啊,回车啊什么的都算做是空白符

    nextInt()方法在扫描到空白符的时候会将前面的数据读取走,但会丢下空白符“\r”在缓冲区中,但是,nextLine()方法在扫描的时候会将扫描到的空白符一同清理掉。

    了解了这两个方法特性和区别,就知道了上边的代码究竟是怎么回事,以及知道了解决的方法。像是上边的代码nextInt()方法之后在缓冲区中留下了“\r”,然后nextLine()方法再去缓冲区找数据的时候首先看到了“\r”,然后就把这个“\r”扫描接收进来,并在缓冲区内清除掉。其实,nextLine()方法是执行过的,并没有不执行。

    2.解决方案:

    我们可以多使用一个nextLine()先将内存区中的空白符“\r”读走,在进行输入赋值!!

    不过以后还是要避免这种情况发生!!!!

    展开全文
  • java 读入流转字符串

    2009-05-27 23:39:00
    开始写socket服务器的时候,服务器用readline()接收客户端消息。但是,服务器不能通过readline()来判断是否客户端是否断开连接。若想判断客户端连接状态要用read()读取字节流,代码如下: private static String ...
  • Java - 从文件中读入字符串和整数

    千次阅读 2014-12-14 22:17:08
    想平时写 C++ 时,从文件中读按指定格式读入数据多方便。。 给自己写个 Java 的。。 package lib.com.chalex.www; import java.io.BufferedReader; import java.io.FileInputStream; import java.io....
  • java读入输出文件字符串

    千次阅读 2013-09-05 14:43:14
    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java....
  • * 读入字符串,遇到某一字符结束读入 * int.txt: 中国123美国abc日本;123 */ import java.io.*; class Test { public static void main(String[] args) throws IOException { FileReader in = new FileReader...
  • 读入数据的时候要注意,行末有换行符和空行之类,这里直接用...s) 读入字符串,它也会自动忽略换行符和空行。但 scanf("%c", &amp;s[i][j]) 就不会忽略,需要加一个getchar函数来读入换行符和空行。...
  • 字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。 (字符串长度不大于100000,保证字符串仅由'0'~'9'这10种字符组成) 示例1 输入 "1","99" 返回值 "100" 说明 1+99=100 ...
  • java字符串如何去掉转义字符
  • JAVA字符串的字典排序

    万次阅读 2018-03-29 21:20:04
    思路:可以将字符串读入ArrayList中,然后重写Collection中sort方法的compare函数。因为本题是String类型,也可以直接调用Collection.sort(list)来达到这个目的。import java.util.*; public class Main { public ...
  • “日暮乡关何处是,烟波江上使人愁”...将字符串写入文件 方法一 public void WriteStringToFile(String filePath) { try { File file = new File(filePath); PrintStream ps = new PrintStream(new FileOutp...
  • JAVA 计算字符串行数!

    千次阅读 2019-04-23 13:16:06
    JAVA计算输入的字符串行数 public static void main(String[] args) { // TODO 自动生成的方法存根 //从键盘输入多行字符串,统计输出字符串行数。输入“q”,退出程序。测试情况 //1.输入3行 //2.一行不输入直接输入...
  • java里的包装类有:Byte,Short,Integer,...题目:从键盘读入字符串,然后转换为Double类型对象,以带2位小数形式输出 代码: package practice; import java.util.Scanner; import java.text.DecimalFormat; pu...
  • Java字符串变量

    千次阅读 2020-02-29 23:37:32
    创建 new = 创建 ☆方法1: String s = new String("a string"); 创建了一个String的对象 用"a string"初始化这个对象 创建管理这个对象的变量s 让s管理这个对象 ...当"+"的一边是字符串而另一边不是时...
  • Java 压缩字符串

    千次阅读 2013-08-27 11:52:03
    最近在做项目中,平台提供一个http服务给其他系统调用,然后我接收到其他系统的json格式的报文后去解析,然后用拿到的数据去调用corba服务,我再把corba的返回值封装完成json字符串返回给外部系统。遇到一个接口去...
  • java逆置字符串(字符数组)(此字符串中的小字符串使用符号隔开) 要求:不改变使用‘符号’隔开的小字符串中的字符顺序,逆置后也为此格式。 =====》例如:“isd am sad asd lalala” 逆置为:“isd am sad asd ...
  • java从控制台读取字符串Today we will look into different ways to read string from console in java. 今天,我们将研究从Java中的控制台读取字符串的不同方法。 从控制台读取Java字符串 (Java Read String from...
  • JAVA String 字符串压缩

    千次阅读 2014-01-27 14:39:28
    public class ... * 字符串的压缩 * * @param str * 待压缩的字符串 * @return 返回压缩后的字符串 * @throws IOException */ public static String compress(String str) throws IOExcept
  • 今天调试一个MR程序,发现数量对不上,找了半天,发现我解析字符串是用空格解析的,将字符串用split(" ")解析然后赋值给字符串数组,但后来发现这个方法行不通,因为有些字符串是包含空格的,如String aa="a b\"c d\...
  • import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.Scanner; import java.util.Stack; import...
  • 从控制台读入字符串的方法

    千次阅读 2012-10-11 09:39:06
    Scanner不单单只能扫描控制台中输入的字符,它还可以让读入字符串匹配一定的正则表达式模式,如果不匹配时将抛出InputMismatchException异常。  使用System.in作为它的构造参数时,它只扫描了系统输入流中的...
  • 题目:读入一个字符串str,输出字符串str中的连续最长的数字串 输入描述: 个测试输入包含1个测试用例,一个字符串str,长度不超过255。 输出描述: 在一行内输出str中里连续最长的数字串。 示例1 输入 abcd...
  • JAVA字符串变为输入流 关于字符串转化为输入流,我找到2种方法: 用StringReader将字符串转化为Reader 用ByteArrayInputStream将字符串转化为InputStream. 还有一个类StringBufferInputStream也可以将String...
  • 读入一个字符串str,输出字符串str中的连续最长的数字串 输入描述: 个测试输入包含1个测试用例,一个字符串str,长度不超过255。 输出描述: 在一行内输出str中里连续最长的数字串。 示例1 输入 abcd...
  • java 压缩字符串

    千次阅读 2016-03-01 20:11:29
    (一是字符串的压缩比例比较的高,二是字符串的压缩和解压实现起来也比较简单)。虽然,最后没有用到字符串的压缩和解压的方式,而是修改客户端(1.http客户端进一步精确查询条件  2.读取返回数据流采用循环读取...
  • java分割字符串和正则表达式

    千次阅读 2011-06-25 21:08:00
    java分割字符串和正则表达式分离字符串字符串依所设定的条件予以分离是很常见的操作,例如指令的分离、文本文件的数据读出等。以后者而言,当在文本文件中存储以下的数据时,在读入文件后,将可以使用String的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,887
精华内容 24,354
关键字:

java读入字符串

java 订阅