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 ; }
网络io,socket
你无法通过Java内置的IO
将文件直接写入远程机器。
你可以使用FTP
的方式将文件写到服务器上。
FTPClientExample