tcl怎么实现从服务器拷贝文件夹,如何在TCL中二进制读取文件并通过XMLRPC将其发送到用Python编写的服务器?...
我有一个用Python编写的XMLRPC服务器(使用xmlrpclib),它定义了以下方法:def saveFileOnServer(fileName, xmldata):
handle = open(fileName, "wb")
handle.write(xmldata.data)
handle.close()
return 0
如果我使用Python客户机连接并发送文件,则一切正常(文件已传输):
^{pr2}$
但是。。。我必须从TCL脚本连接到这个XMLRPC服务器。我要做的是:package require XMLRPC
package require SOAP
package require rpcvar
package require http
set fd [open "resource.res" r]
fconfigure $fd -translation binary
set data [read $fd]
close $fd
XMLRPC::create ::PytharAgent::saveFileOnServer -name "saveFileOnServer" -proxy [::PytharAgent::endpoint] -params {fileName string file binary}
puts [::PytharAgent::saveFileOnServer "C:\\Location\\resource.res" $data]
由此得出以下错误::not well-formed (invalid token): line 2, column 154
invoked from within
"$parseProc $procVarName $reply"
(procedure "invoke2" line 17)
invoked from within
"invoke2 $procVarName $reply"
(procedure "::SOAP::invoke" line 25)
invoked from within
"::SOAP::invoke ::SOAP::_PytharAgent_saveFileOnServer {C:\Location\resource.res} IxNResourceItev1.0.0.0JTYPE2\tm_versio..."
("eval" body line 1)
invoked from within
"eval ::SOAP::invoke ::SOAP::_PytharAgent_saveFileOnServer $args"
(procedure "::PytharAgent::saveFileOnServer" line 1)
invoked from within
"::PytharAgent::saveFileOnServer "C:\\Location\\resource.res" $data"
invoked from within
"puts [::PytharAgent::saveFileOnServer "C:\\Location\\resource.res" $data]"
(file "test.pythat-agent.tcl" line 109)
然后,我将Python代码中的二进制数据和TCL代码中的二进制数据与原始文件进行比较。我在HEX视图中验证后发现,使用TCL读取的数据有原始数据加上一些时不时额外的十六进制代码,或是稍微修改了一些十六进制代码。在
所以我猜这可能与TCL和Python处理二进制数据的不同方式有关。还是我在读TCL的时候做错了什么?在
PS我还发现了this issue似乎和我的很相似,但我不知道确切的解决方案是什么。在
tcl怎么实现从服务器拷贝文件夹,如何在TCL中二进制读取文件并通过XMLRPC将其发送到用Python编写的服务器?...相关推荐
- linux 桌面壁纸图片在哪个文件夹,如何在 Linux 中为每个屏幕设置不同的壁纸-桌面背景在哪个文件夹...
编译自: https://itsfoss.com/wallpaper-multi-monitor/ 作者: Abhishek Prakash 译者: geekpi如果你想在 Ubuntu 18.04 ...
- linux下如何搜索某个文件,技术|如何在 Linux 中查找一个文件
对于新手而言,在 Linux 中使用命令行可能会非常不方便.没有图形界面,很难在不同文件夹间浏览,找到需要的文件.本篇教程中,我会展示如何在 Linux 中查找特定的文件. 第一步要做的是find 命 ...
- java 读取文件的指定行_Java中实现读取文件指定行
Java中实现读取文件指定行 读取文件指定行要用到类LineNumberReader,它是跟踪行号的缓冲字符输入流,其基类是BufferedReader..它有两个构造方法: public LineN ...
- android shell强制删除文件夹_原来手机中的这些文件可以删除,难怪手机越用越卡!...
很多从 iOS 转移到 Android 生态的用户,总是会有这样的抱怨:Android 系统越用越卡,就算清理垃圾也没用! 但其实在Android系统中,除了日常的清理垃圾,我们还可以将一些没用的文件 ...
- 如何在linux上压缩文件夹,如何在Linux中使用命令压缩文件和文件夹
通常情况下,我们都是安装了zip,但验证一下也无妨.你可以运行下面的命令来安装zip sudo apt install zip unzip 现在你知道你的系统支持zip了,你可以继续阅读学习如何在Li ...
- java中bin和src文件夹_编译src中的所有文件?
这是我得到的: /myjava/compile.cmd /myjava/src/a/HelloWorld.java /myjava/src/b/Inner.java /myjava/src/b/Inn ...
- 请问苹果x是如何建文件夹_Mac OS X中创建新文件夹的几种方法
在日常的生活工作中,我们经常需要创建新的文件夹,这些文件夹可以帮助我们更好的管理我们的文件和电脑.因此创建新文件夹也是每个用户都会的事,在最新的MAC OS X系统中,我们可以通过几种方法创建新文件夹 ...
- python找不到scripts文件夹_Python目录下中没有Script文件夹
其中需要将C:\python27\Scripts 和 C:\python27 添加到系统路径中. 计算机属性-远程设置-高级(环境变量)-系统变量PATH后面添加Scrips的路径 而我的Python ...
- java下载整个文件夹_Java下载目录中的所有文件和文件夹
你需要下载页面,这是目录列表,解析它,然后下载链接在页面中的inidiviudal文件- 你可以做点什么-- URL url = new URL("http:www.futureretrog ...
- chrome查看网页文件_如何在Chrome中直接将文件和网页下载到Google云端硬盘
chrome查看网页文件 We've all downloaded files from the web to our computer. However, if you'd rather downl ...
最新文章
- Android ListView 删除 item
- 关于Linux Kernel中的宏定义likely和unlikely
- 调查显示开发者最讨厌 PHP,最爱 Python
- 【CyberSecurityLearning 15】VLAN技术与Trunk
- 第四届AutoDL挑战赛——AutoSpeech2019正式开赛
- boost::geometry::strategy::within::franklin用法的测试程序
- 【Android开发】之Fragment与Acitvity通信
- Altium AD20原理图从库中更新变动,库中模型修改后同步到原理图中
- MySQL循环结构例题_Mysql:循环结构
- 采用分治法求一个整数序列中的最大和最小元素
- C#与PLC通信开发之松下FP系列PLC
- h5分享图片到微信好友、微信朋友圈、qq好友功能
- 全链路日志追踪系统介绍与思考
- echarts Map(地图) 波纹数据点
- 使用FTP(IOS FTP客户端开发教程)
- SpringBoot:运行项目是报错org.apache.ibatis.builder.IncompleteElementException:
- 紫铜带、黄铜带、锡磷青铜带、白铜带的特性
- 视频直播APP源码开发iOS音频播放流程
- electron-updater 自动更新
- python 完全背包问题_背包问题九讲python3实现