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

查看:117
本文介绍了spring - 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 ;

    }

解决方案

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

这篇关于spring - java 写入xml文件 地址如何设置为局域网内的另一台服务器上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆