如何检查和替换Java中的exist文件属性?
我的文件名将是如何检查和替换Java中的exist文件属性?,java,Java,我的文件名将是tablename\u current date.csv 在第一次创建时,它将创建一个新文件,但在此之后,当具有相同的表名时,它将重写第一次创建的文件,并且只更改当前日期 private String filePath; private String downloadToDirectory; public void init() { logWriter = new LogWriter("FileTransferCommand", LogWriter.DEBUG);
tablename\u current date.csv
在第一次创建时,它将创建一个新文件,但在此之后,当具有相同的表名时,它将重写第一次创建的文件,并且只更改当前日期
private String filePath;
private String downloadToDirectory;
public void init() {
logWriter = new LogWriter("FileTransferCommand", LogWriter.DEBUG);
// Declare the properties file.
InputStream is = null;
Properties dbProps = new Properties();
try {
is = getClass().getResourceAsStream("/fileTransfer.properties");
dbProps.load(is);
String OS = System.getProperty("os.name");
String prop1 = "equity_ftp"; String prop2 = "download_dir";
if(OS.indexOf("WIN")>=0){
prop1 = prop1 + "_win32";
prop2 = prop2 + "_win32";
}
filePath = dbProps.getProperty(prop1);
downloadToDirectory = dbProps.getProperty(prop2);
}
catch (Exception e) {
logWriter.log("init Exception : " +e.getMessage(), LogWriter.ERROR);
}finally{
try {
if(is!=null)
is.close();
} catch (IOException e) {
is=null;
}
}
logWriter.log("FileTransferCommand object is created ($Revision: 1.12 $)", LogWriter.INFO);
}
private boolean writeToFile(String[] downloadedResult, FileTransferBean fileTransferBean, FileTransferBean[] fileTransferList, List errors, HttpServletRequest req){
boolean isOK = false;
String userAgent = FormUtil.returnString(req.getHeader("HTTP_USER_AGENT"));
//default to windows
String linebreak = "\r\n";
if(userAgent.toLowerCase().indexOf("nix") >= 0 || userAgent.toLowerCase().indexOf("nux") >= 0 || userAgent.toLowerCase().indexOf("x11") >= 0){
//unix family
linebreak = "\n";
}else if(userAgent.toLowerCase().indexOf("mac") >= 0){
//mac
linebreak = "\r";
}
PrintWriter out = null;
try{
out = new PrintWriter(new BufferedWriter(new FileWriter(downloadToDirectory+fileTransferBean.getTargetFile())));
if (downloadedResult != null && downloadedResult.length > 0){
if (fileTransferBean.getShowDelim().equals("1")){
FileTransferBean fileBean = new FileTransferBean();
for (int a=0; a < fileTransferList.length; a++) {
fileBean = fileTransferList[a];
out.print(fileBean.getStr2());
if (a < fileTransferList.length-1) out.print(",");
}
out.print(linebreak);
//if(isUnix()) out.println("\r");
//else out.println();
}
for (int z=0; z<downloadedResult.length; z++) {
out.print(downloadedResult[z].trim());
out.print(linebreak);
//if(isUnix()) out.println("\r");
//else out.println();
}
}else{
logWriter.log(">>>No record from : "+fileTransferBean.getTableName(), LogWriter.DEBUG);
}
out.flush();
isOK = true;
} catch (IOException ioe) {
logWriter.log("writeToFile IOException : " +ioe.getMessage(), LogWriter.ERROR);
errors.add("Error while downloading file");
isOK = false;
}finally{
if(out!=null)
out.close();
out = null;
}
return isOK;
}
私有字符串文件路径;
私有字符串下载到目录;
公共void init(){
logWriter=newlogwriter(“FileTransferCommand”,logWriter.DEBUG);
//声明属性文件。
InputStream=null;
Properties dbProps=新属性();
试一试{
is=getClass().getResourceAsStream(“/fileTransfer.properties”);
dbProps.load(is);
字符串OS=System.getProperty(“OS.name”);
String prop1=“股权”ftp“String prop2=“下载目录”;
如果(OS.indexOf(“WIN”)>=0){
prop1=prop1+“_win32”;
prop2=prop2+“_win32”;
}
filePath=dbProps.getProperty(prop1);
downloadToDirectory=dbProps.getProperty(prop2);
}
捕获(例外e){
logWriter.log(“初始化异常:+e.getMessage(),logWriter.ERROR”);
}最后{
试一试{
如果(is!=null)
is.close();
}捕获(IOE异常){
is=null;
}
}
logWriter.log(“创建了FileTransferCommand对象($Revision:1.12$)”,logWriter.INFO);
}
私有布尔写文件(字符串[]downloadedResult,FileTransferBean FileTransferBean,FileTransferBean[]fileTransferList,列表错误,HttpServletRequest请求){
布尔值isOK=false;
stringuseragent=FormUtil.returnString(req.getHeader(“HTTP_USER_AGENT”));
//默认为windows
字符串linebreak=“\r\n”;
如果(userAgent.toLowerCase().indexOf(“nix”)>=0 | userAgent.toLowerCase().indexOf(“nux”)>=0 | userAgent.toLowerCase().indexOf(“x11”)>=0){
//unix系列
linebreak=“\n”;
}else if(userAgent.toLowerCase().indexOf(“mac”)>=0){
//苹果
linebreak=“\r”;
}
PrintWriter out=null;
试一试{
out=new PrintWriter(new BufferedWriter(new FileWriter(downloadtoddirectory+fileTransferBean.getTargetFile()));
if(downloadeResult!=null&&downloadeResult.length>0){
if(fileTransferBean.getShowDelim().equals(“1”)){
FileTransferBean fileBean=新的FileTransferBean();
for(int a=0;a 对于(int z=0;zha)日期更改了吗?您的代码应该“重新编写”。我不太确定您希望实现什么。您希望在每次运行后重新编写文件?还是附加到文件末尾?