在JAVA中从BLOB数据写入多个文件时如何避免覆盖文件

问题描述 投票:0回答:1

我正在将DB BLOB(csv)数据中的数据检索到CSV文件中。每次将数据写入文件时,文件都会被覆盖。在我用来编写文件的代码下面。如果我在for循环内关闭writer,那么只有一个文件被写入,而其他文件则没有被加载。如果我在循环外关闭,则相同的文件每次都会被覆盖。

//代码:

while (rs.next()) {
                String filename = rs.getString("file_name");
                String path = ( calPath + filename );
                File file = new File(path);
                FileOutputStream output = new FileOutputStream(file ,true);
                Blob blob = rs.getBlob("file_data");
                byte[] bytes1 = blob.getBytes(1l, (int) blob.length());
                for (int i = 0; i < bytes1.length; i++) {
                     output.write(bytes1);
                                                                   //output.close();
                }

                output.close();

            }

            //connection.close();
java blob outputstream
1个回答
0
投票
File file = new File(path); if(!file.exists() && !file.isDirectory()) { // do your writing? }
© www.soinside.com 2019 - 2024. All rights reserved.