Java通SAS下载sas脚本

  • 简述
  • 配置workspace和配置libname信息
  • 下载文件

简述

书接上回,有时候需要将执行好的sas数据库文件对外提供,实际程序和sas不在同一台服务器上,不想挂载硬盘可以利用FileService进行下载,本章就主要讲解如何使用FileService进行sas7bdat文件的下载。

配置workspace和配置libname信息

这个参照上一章

下载文件

主要关注:

  1. names变量,这里边会存放所有的sas7bdat文件名;
  2. IFilerf类,这里开始为实际读取文件的;
String folder = "C://test";
IFileService fileSvc = workspace.FileService();
boolean[] fim = new boolean[0];
StringHolder lp = new StringHolder();
StringSeqHolder names = new  StringSeqHolder();
TypeCategorySeqHolder tc = new TypeCategorySeqHolder();
LongSeqHolder ls = new LongSeqHolder();
DateTimeSeqHolder dts = new DateTimeSeqHolder();
StringSeqHolder engines = new StringSeqHolder();
//获取文件列表
fileSvc.ListFiles(folder, ListFilesMode.ListFilesModePath, fim, lp, names, tc, ls, dts, ls, dts, engines);//遍历文件
String[] fileNames = names.value;
for(String fileName : fileNames){//获取文件引用StringHolder retName = new StringHolder();String rn = fileName.repalce(".sas7bdat", "");IFileref fileRef = fileSvc.AssignFileref(rn, "", fileSvc.FullName(fileName, folder), "", retName);//开始读写流try(FileOutputStream fos = new FileOutputStream(fileName)){OctetSeqHolder osh = new OctetSeqHolder();int len = 0;IBinaryStream bs = null;while(true){try{len = 1 ;bs = fileRef.OpenBinaryStream(StreamOpenMode.StreamOpenModeForReading);while(len > 0){bs.Read(9999999, osh);len = osh.value.length;if(len > 0){fos.write(osh.value);fos.flush();}}}catech(Exception e){log.error(e)break;}finally{bs.Close();}}}catech(Exception e){log.error(e)}
}

以上就是下载工作空间下的所有文件的逻辑,后面的打包逻辑输出逻辑就省略了,搞定。

Java通SAS下载sas脚本相关推荐

  1. 【JAVA资料免费下载】158个JAVA免豆精品资料汇总——下载目录(转载)

    [JAVA资料免费下载]158个JAVA免豆精品资料汇总--下载目录(转载) 应广大网友要求,最近小弟整理了一批免积分下载的Java优质资料,因资料众多,一一将资料上传上来需要时间,先将下载目录分享给 ...

  2. python怎么执行程序_小鹅通视频怎么下载?用python实现小鹅通视频下载(二)

    小鹅通视频怎么下载?用python实现小鹅通视频下载(二) 背景 上次分享<小鹅通视频怎么下载?用python实现小鹅通视频下载(一)[1]>后,引来了很多人咨询小鹅通视频怎么下载的问题. ...

  3. 【JAVA资料免费下载】158个JAVA免豆精品资料汇总——下载目录

    2019独角兽企业重金招聘Python工程师标准>>> 应广大网友要求,最近小弟整理了一批免积分下载的Java优质资料,因资料众多,一一将资料上传上来需要时间,先将下载目录分享给大家 ...

  4. LoadRunner下载文件脚本

    在看普泽关于pezybase的测试报告的时候,发现里面有用到jmeter(http协议)并发测试下载文件,考虑到后面可能需要在公司pezybase的并发下载,把之前使用过的loadrunner下载文件 ...

  5. 【JAVA资料免费下载】

    [JAVA资料免费下载]158个JAVA免豆精品资料汇总--下载目录(转载) 应广大网友要求,最近小弟整理了一批免积分下载的Java优质资料,因资料众多,一一将资料上传上来需要时间,先将下载目录分享给 ...

  6. Mac笔记本中是用Idea开发工具在Java项目中调用python脚本遇到的环境变量问题解决...

    问题描述: mac笔记本本身会自带几个python版本,比如python2.7版本,我没有改动mac默认的python版本,只是安装了python3.7版本. 使用Pycharm开发Python项目没 ...

  7. u盘可以安装java吗_java下载安装 (三)Java 开发环境配置

    下载后JDK的安装根据提示进行,还有安装JDK的时候也会安装JRE,一并安装就可以了. 安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为C:\Program Files (x86 ...

  8. 【Groovy】Groovy 脚本调用 ( Java 类中调用 Groovy 脚本 )

    文章目录 前言 一.Groovy 类中调用 Groovy 脚本 1.参考 Script#evaluate 方法分析 Groovy 类中调用 Groovy 脚本 2.创建 Binding 对象并设置 a ...

  9. JAVA 通过url下载图片保存到本地(亲测)

    //java 通过url下载图片保存到本地    public static void download(String urlString, int i) throws Exception {     ...

最新文章

  1. Alpha冲刺 - (5/10)
  2. NFX UNISTACK
  3. 关于CSS属性display:none和visible:hidden的区别
  4. 听说你想去大厂看学姐,带你看看拼多多运营面经
  5. 第8章 Service基础Activity与Service绑定
  6. QQ浏览器怎么设置主页 QQ浏览器设置默认主页教程
  7. HTTP/2 协议规范
  8. matlab数字信号处理 王彬,MATLAB数字信号处理
  9. 开发人员如何高效编程?
  10. netty 异常 did not read anything but decoded a message
  11. 关于SCM供应链管理系统开发思路
  12. 使用Composer部署laravel框架
  13. python rgb565_读取RGB565格式的图像
  14. vscode文件管理只有文件夹的时候也层级显示
  15. Halcon:多张图片合并成一张图片
  16. 方阵主对角线元素之和
  17. ThinkPad触摸板开启或者关闭方法
  18. 自己的服务器连接教务系统,勤哲Excel服务器做中学教务管理系统
  19. 计算机基础知识教案 技能高考,高考实用类文本阅读知识复习教案
  20. Spark日志分析项目Demo(8)--SparkStream,广告点击流量实时统计

热门文章

  1. TCP/IP详解 卷1 第一章 概述
  2. 深搜、广搜、搜索剪枝
  3. 将Android手机变成电脑遥控器
  4. SLAM如何发论文?SLAM领域大牛的总结
  5. pdf怎么合并?合并有技巧
  6. 电子商务组成与流程框架
  7. Docker-java api简介
  8. java 替换全角为半角 半角转全角
  9. day6——css3
  10. 图像处理项目——基于机器视觉技术的人脸在线识别系统设计