js如何按换行或回车读取TXT到数组

suano 2007-11-29 12:03:49
如line是用fso的readall读出的内容
我现在用b=line.split()方法将文本内容按某个符号分别存入数组,如b=line.split(","),现在的问题是,按,号.号或按空格我都还好表示,但回车或换行就不知道怎么表示了,高人帮忙指点下....
我试过
var c=string.fromcharcode(13),
b=line.split(""+c+"")
但是提示说未结束的字符串常量
...全文
1322 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
suano 2007-11-29
  • 打赏
  • 举报
回复
还是一样的,看我的代码;
<%
set fs=server.createobject("scripting.filesystemobject")
filename=request("txtfile")
if filename="" then
filename="read.txt"
file=server.mappath(filename)
else
file=filename
end if
fuhao=request("fuhao")
if fuhao="" then
fuhao=","
end if

set txt=fs.opentextfile(file,1,true)
if not txt.atendofstream then
line=cstr(txt.ReadAll)
end if
%>
<script language="javascript">
var a,b,c;
a="<%=line%>";
f="<%=fuhao%>"
if(f=="line"){
b=a.split(/\r?\n/);}
else{
b=a.split(""+f+"")
}
gzdiablo 2007-11-29
  • 打赏
  • 举报
回复
str.split(/\r?\n/);
suano 2007-11-29
  • 打赏
  • 举报
回复
我是用回车换的行,我用\N\R都试了,一样的错
WTFcsdn 2007-11-29
  • 打赏
  • 举报
回复
我刚才试了一下,可以用

<textarea name="a" id="a" ></textarea>

在里面输入几行文字,
然后再地址栏:
javascript:alert(a.value.split("\n"));
可以看到弹出的结果
WTFcsdn 2007-11-29
  • 打赏
  • 举报
回复
试一下用 转义 \n 或者 \r 行不行?

line.split("\n");// \n or \r
suano 2007-11-29
  • 打赏
  • 举报
回复
行了,搞定,厉害厉害!!
WTFcsdn 2007-11-29
  • 打赏
  • 举报
回复
已经说了,代码也都给出来了啊!


<textarea name="a" id="a" style="display:none" > <%=line%> </textarea>
然后对 a.value 进行split,这样用不着转义。
suano 2007-11-29
  • 打赏
  • 举报
回复
那要如何转义呢?因为现在有个文本文件中的电话号码就是以回车分开的,要怎么实现将他们存到数组中???
WTFcsdn 2007-11-29
  • 打赏
  • 举报
回复
你还没明白吗?回车加在脚本里js根本不能执行。回车符号当然特殊字符。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
suano 2007-11-29
  • 打赏
  • 举报
回复
而且我也说了,读取的文本文件中只有数字和逗号,句号,空格或者回车五种字符
suano 2007-11-29
  • 打赏
  • 举报
回复
不是说怀疑,而是已经试过了,如果TXT文件中有回车的话,即使按"'"号分割也会出错,现在的问题就是压根读不出有回车的文本文件
WTFcsdn 2007-11-29
  • 打赏
  • 举报
回复
var b=" al;sdjfa;lskfdj
a;sldfjkas;lfk";
alert(b);



你看看这样的代码能跑起来吗?
你别老怀疑,做下实验不就知道了
suano 2007-11-29
  • 打赏
  • 举报
回复
我这是个电话导入程序,只有数字以及分割符号,如"'",".",空格或回车,现在的问题是不能识别回车,难道回车也是JS的特殊字符??
WTFcsdn 2007-11-29
  • 打赏
  • 举报
回复
天,你把回车换行直接打印到javascript脚本中去了!如果文本中包含js可识别的特殊字符你这脚本肯定要出错,根本无法运行!你必须在输出之前将 变量line中的特殊字符过滤(转义)掉,要不然就会出问题。或者将他们输出到一个textarea,然后在脚本中控制.如下:


<textarea name="a" id="a" style="display:none" ><%=line%></textarea>

然后,你就可以在脚本中对a.value进行split了!
这个问题,结了。
suano 2007-11-29
  • 打赏
  • 举报
回复
最新发现,如果TXT文件中有回车的话,即便按","号分割也会出错,难道ASP就不能识别TXT中的回车??

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧