2013-11-22 3 views
0

Класс My Client получает файл с сервера и хочет сохранить его в определенном каталоге. Вот мой кодКак сохранить файл в определенном каталоге в java?

Object object=sInput.readObject(); 
    if(object instanceof fileDetail){ 
     fileDetail obj1= (fileDetail)object; 
     String str= "A "+obj1.fileExtension+" Received From "+obj1.source; 
     JOptionPane.showMessageDialog(null,str,"Success", WIDTH, null); 
    } 

fileDetail является Сериализуемым объектом, который я использую, чтобы управлять packate получил от Server.Here -класса fileDetail

import java.io.File; 
import java.io.Serializable; 


public class fileDetail implements Serializable{ 
    public File file; 
    public String fileExtension; 
    public String source; 
    public String destination; 

} 

Сервер выбирает файлы JFileChooser и любой вид файла. Выбранный файл сохраняется в объекте класса fileDetail и этот объект отправляется клиенту. Теперь я получаю полученный файл от obj1.file в коде клиента; Я хочу сохранить его в конкретном каталоге. Как это можно сделать? Я нахожусь любопытным нобом на Java.

+0

Если вы используете Java 1.7: вы хотите использовать файлы: http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html Если вы не используете Java 1.7 вы хотите использовать apache-commons-io (http://commons.apache.org/proper/commons-io/) или google guava (https://code.google.com/p/guava-libraries/). Вы также можете сделать это вручную. – zip

+0

Спасибо за помощь. Как я могу сделать это вручную? Может быть, вам немного сложно? – Burro

ответ

0

Запросить пользователя для ввода пути к файлу. Возьмите путь и просто используйте его для печати данных объекта в нем. Если путь является абсолютным, чем использовать его, или иначе файл будет создан в текущем каталоге. Вы можете предоставить эту информацию, указав пользователю путь к файлу.

+0

«просто используйте его для печати данных объекта в нем» Не могли бы вы немного рассказать, как я могу это сделать? – Burro

+0

Переопределить метод toString() в классе fileDetail. Затем вы можете просто создать BufferedWriter writer = new BufferedWriter (новый FileWriter (новый файл («Путь к файлу»)); writer.write (writer.toString()); ' –

Смежные вопросы