Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java BufferedReader未读取整个文本文件 String str=”“; 试一试{ BufferedReader br=新的BufferedReader(新的文件读取器(file.getAbsolutePath()); while(br.readLine()!=null){ str+=br.readLine(); } }捕获(例外e){ //TODO自动生成的捕捉块 e、 printStackTrace(); } 字符串replace=str.replace(“HTTP请求:”,“”) .replace(“资源URL:,”) .replace(“Attribute\t\t Description”,“Attribute | Type | Description ||-----|”) .replace(“数据类型|最大长度|要求|)”,“”) .替换(“不适用”、“对象”) .替换(“字符串”,“字符串”) .替换(“255 |)”,“”) .替换(“必需的”,“必需的**”) .替换(“可选”和“**可选**”) .replace(“请求示例”,“”) .替换(“响应示例”,“无”); PrintWriter pw=null;_Java_Bufferedreader - Fatal编程技术网

Java BufferedReader未读取整个文本文件 String str=”“; 试一试{ BufferedReader br=新的BufferedReader(新的文件读取器(file.getAbsolutePath()); while(br.readLine()!=null){ str+=br.readLine(); } }捕获(例外e){ //TODO自动生成的捕捉块 e、 printStackTrace(); } 字符串replace=str.replace(“HTTP请求:”,“”) .replace(“资源URL:,”) .replace(“Attribute\t\t Description”,“Attribute | Type | Description ||-----|”) .replace(“数据类型|最大长度|要求|)”,“”) .替换(“不适用”、“对象”) .替换(“字符串”,“字符串”) .替换(“255 |)”,“”) .替换(“必需的”,“必需的**”) .替换(“可选”和“**可选**”) .replace(“请求示例”,“”) .替换(“响应示例”,“无”); PrintWriter pw=null;

Java BufferedReader未读取整个文本文件 String str=”“; 试一试{ BufferedReader br=新的BufferedReader(新的文件读取器(file.getAbsolutePath()); while(br.readLine()!=null){ str+=br.readLine(); } }捕获(例外e){ //TODO自动生成的捕捉块 e、 printStackTrace(); } 字符串replace=str.replace(“HTTP请求:”,“”) .replace(“资源URL:,”) .replace(“Attribute\t\t Description”,“Attribute | Type | Description ||-----|”) .replace(“数据类型|最大长度|要求|)”,“”) .替换(“不适用”、“对象”) .替换(“字符串”,“字符串”) .替换(“255 |)”,“”) .替换(“必需的”,“必需的**”) .替换(“可选”和“**可选**”) .replace(“请求示例”,“”) .替换(“响应示例”,“无”); PrintWriter pw=null;,java,bufferedreader,Java,Bufferedreader,BufferedReader忽略前3行并读取/转换其余的行。不知道问题是什么。我尝试过其他StackOverflow解决方案,但它们似乎都不起作用 问题在于: String str = ""; try { BufferedReader br = new BufferedReader(new FileReader(file.getAbsolutePath())); while

BufferedReader忽略前3行并读取/转换其余的行。不知道问题是什么。我尝试过其他StackOverflow解决方案,但它们似乎都不起作用

问题在于:

                String str = "";
            try {

                BufferedReader br = new BufferedReader(new FileReader(file.getAbsolutePath()));
                while (br.readLine() != null) {
                    str += br.readLine();
                }
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            String replace = str.replace("HTTP Request: ", "")
                    .replace("Resource URL: ","")
                    .replace("Attribute\t\tDescription", "| Attribute | Type | Description |<P>|----|----|<P>")
                    .replace("Data Type | Max Length | Requirement |", "")
                    .replace("N/A", "Object")
                    .replace("String", "| String")
                    .replace("255 |", "")
                    .replace("Required", "**Required**")
                    .replace("Optional", "**Optional**")
                    .replace("Request Example <P>", "")
                    .replace("Response Example <P>", "Nothing");

            PrintWriter pw = null;
检查br.readLine()是否为空时,您已经读取了该行。要解决此问题,您可以尝试以下操作:

while (br.readLine() != null)

theVoid已经告诉我们什么是问题并给出了解决方案

在cinditional语句是迭代函数的情况下,我总是倾向于使用

String line = br.readLine();
while (line != null){
    str +=line;
    line = br.readLine();
}

您只需检查
br.readLine()
的返回值,同时也应检查它,以下是常见代码:

do{
    //task
    //Iterate and store result in var, like in your case
    var = br.readLine();
}while(var != null/*check on var rather than executing iteration*/);

您是否检查了
str
replace
的内容?是的,我系统输出了str,它打印时没有前3行。@Suhail Prasathong我很高兴我提供了帮助,但记住接受解决方案来结束问题,它不一定是我的。
StringBuider buffer = new StringBuilder();
try (BufferedReader br = new BufferedReader(new FileReader(file.getAbsolutePath()))) {
    String line;
    while((line = br.readLine()) != null) {
        buffer.append(line);
    }
}