2011-10-18 60 views
0

基本上我已经上传了一个文本文件到我的主机,我想编辑文件并用java读取它。我已经创建了它的权限,但我不知道如何用Java来完成它。这是我的代码读取/写入本地:Java在网站上读取/写入文本文件

阅读:

BufferedReader mainChat = new BufferedReader(new FileReader("./messages/messages.txt")); 
String str; 
    while ((str = mainChat.readLine()) != null) 
    { 
     System.out.println(decrypt.Decrypt(str, salt)); 
    } 
    mainChat.close(); 

写:

FileWriter chatBuffer = new FileWriter("./messages/messages.txt",true); 
    BufferedWriter mainChat = new BufferedWriter(chatBuffer); 
    mainChat.write(message); 
    mainChat.newLine(); 
    mainChat.flush(); 
    mainChat.close(); 

我会如何修改这个,使其工作?谢谢

+1

您需要编写一些读取数据的服务器进程,而不是从客户端读取数据。 – MeBigFatGuy

回答

0

我不认为你可以在本地文件系统上直接读取/写入Web服务器上的文件。你可能会需要做的是:

  1. 下载文件
  2. 在本地编辑
  3. 时,它的保存打开它,将自动重新上传文件

你可以做这一切都在编辑器中,并通过让它在后台执行download-edit-save-upload来隐藏在应用程序中。许多文本编辑器将通过类似地建立远程连接来完成此操作,并且使文件往返行程对用户透明。

+0

我知道EditPlus会这样做。 – bdares

+0

嗯我不认为这会工作,有多个用户应该读取和写入相同的文件,其聊天系统有点儿。所以我一直在想,当有人提交一个新的消息,它会被添加到txt等 – Cody

+0

哦,所以别人的改变我的老板你的。那么,在这种情况下,你需要一个额外的层;一个可以接受的时间戳软件,时间戳,并将所有变更调和/合并为一个正式版本。简单地设置权限并不会自行完成,因为要写入文件的** last **人员将对其进行更改,同时取消正在处理文件的其他人员。 – jefflunt

0

你应该实施某种remote procedure call。基本上,从客户端向服务器发送一条消息,其中包含您想要放入文件的内容。然后让服务器实际打开文件并将消息内容写入文件。