JAVA如何从配置文件(.txt)读入信息 50分求答案

xuedouer521 2007-06-29 09:56:10
我写了一个FTP登陆小程序 希望能从.TXT文件中读取配置内容 BufferedRdader br = new BufferedRdader {
new FileReader ("username.txt")};
String username = br.readLine();
但是程序通不过,有哪位知道怎么读.TXT文件里得配置么?
...全文
501 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
gongyali2005 2007-06-29
  • 打赏
  • 举报
回复
难道IO流不复杂?
xuedouer521 2007-06-29
  • 打赏
  • 举报
回复
XML格式太复杂了~@.@
xuedouer521 2007-06-29
  • 打赏
  • 举报
回复
好像是配置文件得路径问题~-.-!谢谢了~:)
我.properties文件中格式是 username = test
用 Properties p=new Properties();
FileInputStream in = new FileInputStream("username.properties");
p.load(in);
String username=p.getProperty("username"); 读配置文件
可是现在登陆得时候 client.login(username, password); 登不上去了 原先写定IP ID 和密码测试得时候是可以成功登陆得,我想.properties文件中格式我是否有问题 造成他读不进去配置呀?
gongyali2005 2007-06-29
  • 打赏
  • 举报
回复
建议使用XML文件来实现你想要的功能.
baobao28 2007-06-29
  • 打赏
  • 举报
回复
try {
FileReader fr=new FileReader("d:\\systen.ini");
BufferedReader br=new BufferedReader(fr);
String s=null;

while ((s=br.readLine())!=null)
{
String Ftr=s;
StringTokenizer gall=new StringTokenizer(Ftr,"=");
String gtstr=gall.nextToken();//取"="前面的所有值

if (gtstr.equals("jdbc.dbDriver"))
{
String dbDriver=gall.nextToken();
}

if (gtstr.equals("jdbc.dbUrl"))
{
String dbUrl=gall.nextToken();
}
}

} catch (Exception e) {
e.printStackTrace();
}
linguoqiang 2007-06-29
  • 打赏
  • 举报
回复
文件路径不正确,如果你写("username.properties");,那么系统会到你启动程序的路径去找该文件,例如,你的run.bat是启动的程序,该文件在d:\test目录下,那么程序会到d:\test目录下去找该文件,找不到即包括。如果你是放到和某个类同目录,那么可以使用this.getClass().getResourceAsStream()获得
吴恒 2007-06-29
  • 打赏
  • 举报
回复
你的配置文件路径是不是有问题呀
xuedouer521 2007-06-29
  • 打赏
  • 举报
回复
FileInputStream in = new FileInputStream("username.properties");这句~ \
错误: at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at shiyan3.Main.main(Main.java:37)
leasa 2007-06-29
  • 打赏
  • 举报
回复
用绝对路径试试,
异常信息怎么只有三行,没有关键内容.
Ji秋风 2007-06-29
  • 打赏
  • 举报
回复
把username.txt放到类同目录下试试
吴恒 2007-06-29
  • 打赏
  • 举报
回复
你在哪一步报的错呀。
xuedouer521 2007-06-29
  • 打赏
  • 举报
回复
-.-! 吴恒~ 还是和上面一样得问题~ 设个传递值程序也过不去~
吴恒 2007-06-29
  • 打赏
  • 举报
回复

Properties props = new Properties();
FileInputStream in = new FileInputStream("database.properties");
props.load(in);
in.close();
xuedouer521 2007-06-29
  • 打赏
  • 举报
回复
如果用扩展名.properties 代码如下:
Properties p=new Properties();
p.load(new FileInputStream("username.properties"));
String username=p.getProperty("username");
程序还是过不去~ 报错
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at shiyan3.Main.main(Main.java:37)
leasa 2007-06-29
  • 打赏
  • 举报
回复
用properties文件,

public class PropertiesTest {
public static void main(String[]args){
Properties prop=new Properties();
try {
prop.load(new FileInputStream("...../log4j.properties"));
System.out.println("prop:"+prop);
System.out.println("prop:"+prop.get("log4j.appender.stdout"));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
gloomyfish 2007-06-29
  • 打赏
  • 举报
回复
把配置文件放在类路径下面,然后用ClassLoader.getResourceAsStream
得方法去获得解析即可
建议你把文件扩展名改成.properties, okie
xuedouer521 2007-06-29
  • 打赏
  • 举报
回复
谢谢各位 散分结贴了~

62,623

社区成员

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

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