使用System.in.read(缓冲区,0,255)时,java错误找不到符号

使用System.in.read(缓冲区,0,255)时,java错误找不到符号,java,buffer,symbols,Java,Buffer,Symbols,我的代码: public class IOTest { public static void main(String[] args) { System.out.println("请在下面输入一行字符 :\n"); try { System.in.read(buffer,0,255); } catch(Exception e) { System.out.println("读取输入字符出错,错误信息为 :"+e.toString()+"

我的代码:

public class IOTest {
public static void main(String[] args) {
    System.out.println("请在下面输入一行字符 :\n");
    try {
        System.in.read(buffer,0,255);
    }
    catch(Exception e) {
        System.out.println("读取输入字符出错,错误信息为 :"+e.toString()+"\n");
    }
    System.out.println("您刚才输入的一行字符为 :\n");
    String inputStr=new String(buffer,0);
    System.out.println(inputStr);
}
}
以下是运行代码时的错误信息:

D:\dasi\java\javaLab>javac -encoding UTF-8 IOTest.java
`enter code here`IOTest.java:7: 错误: 找不到符号
                    System.in.read(buffer,0,255);
                                   ^


符号:   变量 buffer
  位置: 类 IOTest
IOTest.java:13: 错误: 找不到符号
                String inputStr=new String(buffer,0);
                                           ^
  符号:   变量 buffer
  位置: 类 IOTest
注: IOTest.java使用或覆盖了已过时的 API。
注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
2 个错误
有人能帮我吗?我真的检查过了,我仍然不知道为什么。
顺便说一句,中国话“错误: 找不到符号" 表示“错误:找不到符号”。

您应该创建
缓冲区
变量,如下所示:

byte[] buffer = new byte[256]
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class IOTest {
    public static void main(String[] args) {
        System.out.println("请在下面输入一行字符 :\n");
        BufferedReader br;
        String inputLine = "";
        try {
            br = new BufferedReader(new InputStreamReader(System.in));
            inputLine = br.readLine();
        } catch(Exception e) {
            System.out.println("读取输入字符出错,错误信息为 :"+e.toString()+"\n");
        }
        System.out.println("您刚才输入的一行字符为 :\n" + inputLine);
        //    String inputStr=new String(buffer,0);
        //    System.out.println(inputStr);
    }
}
完整代码:

public class IOTest {
    public static void main(String[] args) {
        System.out.println("请在下面输入一行字符 :\n");
        byte[] buffer = new byte[256]; // This line was added
        try {
            System.in.read(buffer,0,255);
        }
        catch(Exception e) {
            System.out.println("读取输入字符出错,错误信息为 :"+e.toString()+"\n");
        }
        System.out.println("您刚才输入的一行字符为 :\n");
        String inputStr=new String(buffer,0);
        System.out.println(inputStr);
    }
}

在继续之前,您可能需要阅读一些Java教程,例如:

您的程序必须更改为以下内容:

byte[] buffer = new byte[256]
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class IOTest {
    public static void main(String[] args) {
        System.out.println("请在下面输入一行字符 :\n");
        BufferedReader br;
        String inputLine = "";
        try {
            br = new BufferedReader(new InputStreamReader(System.in));
            inputLine = br.readLine();
        } catch(Exception e) {
            System.out.println("读取输入字符出错,错误信息为 :"+e.toString()+"\n");
        }
        System.out.println("您刚才输入的一行字符为 :\n" + inputLine);
        //    String inputStr=new String(buffer,0);
        //    System.out.println(inputStr);
    }
}

你认为缓冲区是什么?创建和初始化缓冲区。使用InputStreamReader创建缓冲区的更好方法这可能会有帮助: