wjgpath是配置文件里的路径,这里是本地G盘,配置如下
wjgpath = G:\\wjgxml\\
/**
* 输出xml文件到指定目录
* @param root
* @return
*/
private boolean createXmlFile(int xmlnum , Element root){
//设置文件编码
OutputFormat xmlFormat = new OutputFormat();
xmlFormat.setEncoding("UTF-8");
// 设置换行
xmlFormat.setNewlines(true);
// 生成缩进
xmlFormat.setIndent(true);
xmlFormat.setNewLineAfterDeclaration(false);
// 使用4个空格进行缩进, 可以兼容文本编辑器
xmlFormat.setIndent(" ");
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 第1到6位为省级行政区划代码;
// 第7到14位为数据交换的日期,表示方法为:YYYYMMDD;
// 第15到20位为顺序号,每天零点置零,以000001为始。
// 举例:WZHY_GSXX_42000020161025000001.xml
String number = String.format("%06d", xmlnum);
String base = ConfigHelper.get("wjgpath")+"/"+ formatter.format(new Date()) +"/"+"tjdata"+"/"+"jbxx"+"/"
+(formatter.format(startTime)+"-"+formatter.format(endTime))+"/";
//System.out.println(base);
//String fileName = "WZHY_GSXX_130000"+ formatter.format(new Date())+number +".xml";
String fileName = "WZHY_GSXX_130000"+ formatter.format(new Date())+number +".xml";
String path = base+fileName ;
File f = new File(base) ;
if(!f.exists()){ f.mkdirs() ;}
if(new File(path).exists()){ new File(path).delete() ; }
try {
Document document = DocumentHelper.createDocument();
document.add(root);
document.setXMLEncoding("UTF-8");
//创建写文件方法
FileOutputStream fos = new FileOutputStream(path);
XMLWriter xmlWriter = new XMLWriter(fos,xmlFormat);
//写入文件
xmlWriter.write(document);
//System.out.println("Encoding : "+document.getXMLEncoding());
//关闭
xmlWriter.close();
return true ;
} catch (Exception e){
e.printStackTrace();
}
return false ;
}
你無法透過Java內建的
IO
将文件直接写入远程机器。你可以使用
FTP
的方式將檔案寫到伺服器上。FTPClientExample
網路io,socket