Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
496 views
in Technique[技术] by (71.8m points)

java 写入xml文件 地址如何设置为局域网内的另一台服务器上

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 ;

    }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

你无法通过Java内置的IO将文件直接写入远程机器。
你可以使用FTP的方式将文件写到服务器上。
FTPClientExample


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...