java程序求助

王朝知道·作者佚名  2009-06-23
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

分析下面程序需求,设计程序流程图,并写一段程序完成下面功能.

1.从控制台接受用户输入的文件名和待查找字符串参数.

2.打开用户输入文件名对应的文本文件,查找用户输入字符串在文件中出现的全部位置(需要给出字符串出现的行和列)并输出到控制台上.

例如:

文件(test.txt)内容:

java is a good language

we have study how to read and write file in java

程序运行:

请输入文件名:

test.txt

注:如果一时间不能给出完整的答案,能回答出大部分的内容都可以.

參考答案:

import java.io.*;

import java.lang.Exception;

public class Search

{

String context;

int lenth[]=new int[50],row,line;

public Search(){}

public void openFile(String file_name) throws Exception{

String stri="",str;

File fl=new File(file_name);

FileReader reader=new FileReader(fl);

BufferedReader in = new BufferedReader(reader);

int i=0;

while((str=in.readLine())!=null){

stri+=str;

lenth[i++]=str.length();

}

System.out.println(stri);

context=stri;

}

public void lookup(String words){

int flag=0,i=0,len;

len=words.length();

flag=context.indexOf(words,i);

while(flag!=-1){

i=i+len;

getPos(flag);

flag=context.indexOf(words,i);

}

}

public void getPos(int index){

int temp=0,i;

for(i=0;lenth[i]>0;i++){

temp+=lenth[i];

if(temp>=index+1){

row=i+1;

line=index-temp+lenth[i]+1;

break;

}

else continue;

}

//System.out.println("index="+flag+" \n row="+row+", line="+line);

System.out.println(" row="+row+", line="+line);

}

public static void main(String args[]) throws Exception{

Search search=new Search();

search.openFile("test.txt");

search.lookup("gi");

}

}

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航