关于java运行无结果的问题

lyonslch 2009-04-26 04:52:57
写了一个读入文件 处理文件中字符串的java程序
程序没有任何错误
没有抛任何异常
但是在eclipse下没有运行的结果
本身编写是会打印关于文件中的某些资料的
先开始以为是文件太大 但是在削减文件大小后仍然没有结果
望高手赐教
文件的读写及关闭都已执行了
...全文
88 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wutianyu0 2009-04-26
  • 打赏
  • 举报
回复
厉害
cwjieNo1 2009-04-26
  • 打赏
  • 举报
回复
顶楼上的,正确,可以这样吧
if(i>=0){
if(i % 2 == 0){
--------
}
i++;
}
lyonslch 2009-04-26
  • 打赏
  • 举报
回复
谢谢诸位 知道错误了.....打搅大家了!
lyonslch 2009-04-26
  • 打赏
  • 举报
回复
抱歉 我可能还是没说明白 我文件的格式呢是这样的
第一行是空行
第二行的数据我不需要进行处理
第三行的数据我是需要的
第四行是空行
第五行是我需要的数据
。。。。
直到第7行
然后是一个这样格式的循环
对于if句子的使用我是在处理文件格式。。。。
andycpp 2009-04-26
  • 打赏
  • 举报
回复
                if(i % 2 == 0){
if(i!=0){
System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++; //这句话位置不对
}

当i=0的时候,能够进入if(i % 2 == 0){ 里面,然后i++变成1
当i=1的时候,就能够进入if(i % 2 == 0){ 里面了,i++就无法执行,i永远不能等于2,自然没有结果
SimonYeung 2009-04-26
  • 打赏
  • 举报
回复
学习一下 文件方面还没学到
lyonslch 2009-04-26
  • 打赏
  • 举报
回复
是这样 文件里的串的格式会是一行空白 一行资料 所以 我需要在读第一行的时候呢 把空行给隔过去
所以我会让i=0时读入 但不执行任何操作 当读完空行后在去读后面有字符的串
taofan911 2009-04-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lyonslch 的回复:]
BufferedReader infile = new BufferedReader(m);
String line;
int i = 0;

try {
while((line = infile.readLine())!=null) {
if(i % 2 == 0){
if(i!=0){

System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++;
}
if(i == 9) i =0;
}
}catch (IOException e){
System.err.println("IO Exception!");
}

[/Quote]
你看红色字的地方
你定义了int i=0
if(i % 2 == 0)
0%2=0吧//你这句话有意义么 ,我觉得没有意义
if(i!=0)//当i不等于0的时候才进入if体里 i一直等于0 他还能进入if体了么,当然会没有结果了
lishigui 2009-04-26
  • 打赏
  • 举报
回复
if(i % 2 == 0){
if(i!=0){
System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++;
}

上面代码有错,要好好看看哦!
lyonslch 2009-04-26
  • 打赏
  • 举报
回复
import java.io.*;


class Method {
private FileReader m;

public Method(String filename) {
try {
m = new FileReader(filename);
}catch(Exception e) {
System.err.println("file not found!");
}
}


public void answerreturn() {
BufferedReader infile = new BufferedReader(m);
String line;
int i = 0;

try {
while((line = infile.readLine())!=null) {
if(i % 2 == 0){
if(i!=0){
System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++;
}
if(i == 9) i =0;
}
}catch (IOException e){
System.err.println("IO Exception!");
}

try {
infile.close();
}catch (IOException e){
System.err.println("IO Exception!");
}

}// answerreturn() end



}




public class Xingshikaoshi {
public static void main(String[] args) {
String filename = "laji.txt";

Method laji = new Method(filename);
laji.answerreturn();

}

}
rypgood 2009-04-26
  • 打赏
  • 举报
回复
代码贴出来
别老以为自己不会出错
经常就是代码的错误
yzsunlight 2009-04-26
  • 打赏
  • 举报
回复
使用eclipse 调试一下

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧