ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 466|回复: 9

[讨论] JSA中LineInPut读取文本文件丢失数据

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-4-5 16:51 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
RT:使用JSA LineInput读取数据会缺失,哪位大佬知道是什么原因

文本内容:
"{"data":[{"name":"test.xlsx","path":"D:\\Downloads","source":"D:\\桌面"}],"count":1}"
读取出来内容
"{"data":[{"name":"test.xlsx","path":"D:\\Downloads","source":"D

TA的精华主题

TA的得分主题

发表于 2024-4-8 15:42 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 一步001 于 2024-4-8 15:45 编辑
  1. function read(){//读取文本文件
  2.         read(ThisWorkbook.Path+"\1.txt");
  3.         let n=FreeFile();//赋值一个未用的文件号
  4.    Open(path,n,4,jsReadWrite,jsLockWrite);//打开对应文件
  5.         let mData="";
  6.         while(!EOF(n)){//读取文件内容给变量赋值
  7.                 mData+= LineInput(n)+"\r\n";
  8.         }
  9.         Close(n);
  10.         MsgBox(mData);//显示读取的内容
  11. }
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-4-10 11:12 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-4-10 11:20 | 显示全部楼层
简七 发表于 2024-4-10 11:12
不行的哦,我这里是读不全的 wps版本:12.8.2.15209 企业版

上vba模块吧。我试过也不行。

TA的精华主题

TA的得分主题

发表于 2024-4-10 12:19 | 显示全部楼层
考虑到linux系统,jsa操作外部数据还是用web接口吧,扩展性强,各种方法成熟,就是每次运行一个服务器有点怪怪的


动画.gif

test.7z

308.71 KB, 下载次数: 3

TA的精华主题

TA的得分主题

发表于 2024-4-10 12:28 | 显示全部楼层
本帖最后由 wanghan519 于 2024-4-10 13:00 编辑

这个httpd.exe是由下载的busybox-w32.exe改名成httpd.exe来的,那几个国产系统都自带busybox,仔细想想,即使wps推出了操作外部文件的方法,我未必想再学一种写法,Linux里的wps支持wpsjs加载项,本就需要写web接口,而脚本环境里操作外部文件的方法多的是,都非常成熟,想来想去,web接口写cgi真的挺合适
可以在这个目录里建立cgi-bin文件夹,里面可以写各种脚本甚至exe,然后都可以从jsa里通过fetch获得脚本运行的结果,想怎么操作外部就怎么操作

TA的精华主题

TA的得分主题

发表于 2024-4-10 12:31 | 显示全部楼层
忘记说了,如果需要转字符编码,可以把命令改回busybox.exe,然后写脚本运行httpd然后在cgi-bin里写一句iconv,就可以在jsa里获取转码后的文本

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-4-10 15:16 来自手机 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
wanghan519 发表于 2024-4-10 12:28
这个httpd.exe是由下载的busybox-w32.exe改名成httpd.exe来的,那几个国产系统都自带busybox,仔细想想,即 ...

公司统一的版本 不支持fetch

TA的精华主题

TA的得分主题

发表于 2024-4-10 17:18 | 显示全部楼层
简七 发表于 2024-4-10 15:16
公司统一的版本 不支持fetch

lineinput怎么变得这么怪,文件的最后一行读不出来,什么鬼。。。
附件里是这么个逻辑,shell调用命令把文本转base64编码且每行60个字符,且在最后加一个==的行
lineinput读进来,jsa解码base64,读是读出来了,但这也太怪异了。。。


test.7z

313.14 KB, 下载次数: 3

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-4-10 18:45 来自手机 | 显示全部楼层
wanghan519 发表于 2024-4-10 17:18
lineinput怎么变得这么怪,文件的最后一行读不出来,什么鬼。。。
附件里是这么个逻辑,shell调用命令把 ...

write也怪 也有长度问题
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-4 01:16 , Processed in 0.053067 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表