찾다

 >  Q&A  >  본문

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 ;

    }
黄舟黄舟2806일 전582

모든 응답(2)나는 대답할 것이다

  • 巴扎黑

    巴扎黑2017-04-18 10:51:58

    Java에 내장된 IO을 통해 원격 시스템에 직접 파일을 쓸 수 없습니다.
    FTP 메소드를 사용하여 서버에 파일을 쓸 수 있습니다.
    FTP클라이언트예

    회신하다
    0
  • PHPz

    PHPz2017-04-18 10:51:58

    네트워크 IO, 소켓

    회신하다
    0
  • 취소회신하다