Как получить файл java.io.File из класса Apache UploadedFile? - PullRequest
1 голос
/ 12 декабря 2011

Как преобразовать загруженный файл из класса UploadedFile apache в класс java.io.File?

Ответы [ 3 ]

4 голосов
/ 26 октября 2012

Самый простой способ - использовать Apache Commons FileUtils .

File destFile= new File("somefile.txt");
FileUtils.copyInputStreamToFile(uploadedFile.getInputStream(), destFile);
1 голос
/ 12 декабря 2011

Глядя на документацию (UploadedFile и File) для обоих классов, вот одно решение.

Поскольку вы можете получить доступ к InputStream из UploadedFile, вы можете прочитать данные загруженного файла и записать их во временное местоположение или другое местоположение, которым может управлять ваше приложение.

// assume that you have the UploadedFile object named uploadedFile
InputStreamReader reader = new InputStreamReader(uploadedFile.getInputStream());
int partition = 1024;
int length = 0;
int position = 0;
char[] buffer = new char[partition];
FileWriter fstream = new FileWriter("out.tmp");
do{
    length = reader.read(buffer, position, partition)
    fstream.write(buffer, position, length);
}while(length > 0);
File file = new File("out.tmp");
0 голосов
/ 23 марта 2017
InputStreamReader reader = new InputStreamReader(uploadedFile.getInputstream());
BufferedReader br = new BufferedReader(reader);
File f = new File("file.txt");
FileWriter fw = new FileWriter(f,false);
BufferedWriter bw = new BufferedWriter(fw);

while((line = br.readLine()) != null){
   fw.write(line + System.lineSeparator());
}

Этот код вернет ваш загруженный файл в текстовый файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...