文件管理
有许多操作允许CindyScript与存储在计算机其他位置的文件进行交互。请注意,这些命令不适用于HTML页面中的小程序。
正在读取文件
加载数据:载荷(字符串›)
CindyJS中尚不可用!
描述:此运算符接受参数字符串›
,它被视为文件名(可能前面有目录信息)。如果文件名合法,则文件中包含的全部信息将作为字符串返回。此运算符与标记化
运算符,它有助于分析结构化数据。数据从当前活动目录中读取,可以使用setdirectory(设置目录)
操作员。
例子:假设文件中加载演示.txt
包含数据
abc、gfdg;1,3,5.6,3.141;56、abc、xxx、yyy
下面的代码读取数据并通过标记化它来创建一个列表;
和,
.
x=负载(“LoadTest.txt”);y=标记化(x,(“;”,“,”);应用(y,println(#));
结果输出为
[abc,gfdg][1,3,5.6,3.141][56,abc,xxx,yyy]
异步加载数据:负载(字符串›、变量›、б表达式›)
描述:CindyJS支持此版本。它加载由HTTP或HTTPS URL标识的资源字符串›
.资源加载完成后,它将调用execute出口›
使用资源的内容视为字符串值并分配给变量var›
.如果加载资源失败,出口›
也会被执行,但在这种情况下var›
绑定到未定义的值___
.
函数本身将返回真的
如果开始加载,或___
如果字符串›
参数不是要加载的有效URL。
请注意,在编写本文时,URL必须是绝对URL。
例子:
负载(“http://some.host/some/resource.txt“,结果,if(未定义(结果),err(“加载失败”),err(“已成功加载”+结果));
异步加载数据:负载(字符串›,expr›)
描述:这是一个简写符号负载(字符串›,#,expr›)
,使用#
作为引用内部结果的变量出口›
.
例子:
负载(“http://some.host/some/resource.txt",如果(isundefined(#),err(“加载失败”),err(“已成功加载”+#));
导入程序代码:导入(字符串›)
CindyJS中尚不可用!
描述:此运算符接受参数字符串›
,它被视为文件名(包括目录信息)。如果文件名合法,则假定文件的全部内容都可以由CindyScript代码解析,并立即执行。通过这种方式,可以加载具有预定义功能的库。建议使用进口
操作符只在CindyScript的“Init”部分,否则每次移动都会读取文件。
设置目录:setdirectory(字符串›)
CindyJS中尚不可用!
描述:此运算符设置所有后续文件操作的目录。
正在写入文件
也可以通过一系列Cindy脚本命令写入文件。通常的写入周期是:打开文件-写入文件-关闭文件。这可以使用以下命令完成。
打开文件:打开文件(字符串›)
CindyJS中尚不可用!
描述:打开具有指定名称的文件。该函数返回后续打印操作所需的文件句柄。
打印到文件:println(文件›,字符串›)
CindyJS中尚不可用!
描述:与打印(…)
命令。但是,此命令打印到指定的文件文件›
.
打印到文件:打印(文件›,字符串›)
CindyJS中尚不可用!
描述:与打印(…)
命令。但是,此命令打印到指定的文件›文件›
.
打印到文件:关闭文件(›文件›)
CindyJS中尚不可用!
描述:此命令最终关闭文件。
例子:以下示例说明了文件写入周期:
f=打开文件(“myFile”);println(f,“这里有一些数字”);对于所有(1..15,打印(f,#+“”);println(f,“”);关闭文件(f);
此代码生成包含以下内容的文件:
这里有一些数字1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
连接到HTML
打开网页:openurl(字符串›)
CindyJS中尚不可用!
描述:打开一个浏览器,其中的网页以string›表示。
调用javascript:javascript(字符串›)
描述:在导出的小程序中,此语句调用浏览器Javascript环境中的语句。该语句由字符串›
.在独立应用程序中,此语句不执行任何操作。
例子:以下脚本将导致浏览器中弹出消息窗口:
javascript(“警报(‘来自灰姑娘的你好!!’)”);
网络连接
Cinderella的TCP命令充其量只是初级的,但它们提供了简单网络所需的基本功能。您应该能够通过互联网发送和检索数据。
打开TCP端口:openconnection(字符串›,int›)
CindyJS中尚不可用!
描述:打开到第一个参数指定的服务器和第二个参数指定端口的双向tcp连接。返回值是此网络连接的句柄。
例子:在下面的示例中,我们打开一个到web服务器的连接,并从那里读取HTML代码。
x=开放连接(“cermat.org”,80);println(x,“GET/”);y=“”;while(!isundefined(y),y=readln(x);println(y));紧密连接(x);
写入TCP连接:打印(手柄›,字符串›)
CindyJS中尚不可用!
写入TCP连接:println(手柄›,字符串›)
CindyJS中尚不可用!
描述:这个打印
和打印ln
函数不仅支持写入文件,还支持写入由开放式连接
.
将输出刷新到TCP端口:冲洗(把手›)
CindyJS中尚不可用!
描述:刷新给定连接的输出缓冲区。
从TCP连接读取:readln(手柄›)
CindyJS中尚不可用!
描述:从给定连接读取一行。如果无法读取任何数据,此命令将在5秒后超时。
关闭TCP连接:紧密连接(把手›)
CindyJS中尚不可用!
描述:关闭句柄给定的连接。