用VBScript写合并文本文件的脚本

今天用脚本实现几个文本文件的合并,被FSO中的几个函数绊住了好久,最终认定这里应该是Window里的Bug

 

合并文本的脚本可以这么写:

Sub AppendTextFile(filename)

Set objTextFile = objFSO.OpenTextFile(filename, ForReading, true, -2)

Do Until objTextFile.AtEndOfStream

     objOutFile.WriteLine(objTextFile.Readline)

Loop

End Sub

 

可是如果所读取的文件是UTF-8格式的,那么文件开头的三个字节的标识符会被脚本认为是数据,这样这个标识符就变成了合并后文件里的乱码。

 

FSO是提供了打开Unicode文件的参数的,可惜这里并不生效。

TristateUseDefault

-2

Opens the file using the system default.

TristateTrue

-1

Opens the file as Unicode.

TristateFalse

 0

Opens the file as ASCII.

 

请教了Google大师,发现有人说用OpenAsTextStream是可以的,可惜在我的环境里还是不成功。

 

 

另外一个想法是读入文件的时候,自行判断文件开始三个字节是否标识符,这也被判断是不可行的方法,因为FSO提供的Read是按字符进行读取,这样,在有中文的环境里,我们不可能正好读出这三个字节。

 

 

类似的问题在IIS6里面被微软确认,好像也有一个对应的补丁出来,但是对于批处理文件的情况,似乎还是没有修改过来。

 

最后,MSDN帮了很大的忙,但是它的地址很不好找,记录一下:

http://msdn.microsoft.com/en-us/library/ms950396.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
TextPipe Pro是执行的转换和操作文本文件的巨大范围内的强大的文本转换工作台。它是在可在同一时间内进行,在电力和其变换的灵活性,在文件中,它可以处理和更多的尺寸变换的数是唯一的。数据可以从数据库中提取的多种文本格式和自定义转换可以用VBScript,JScript和其他脚本语言。 什么是 TextPipe Pro? TextPipe Pro是执行的转换和操作文本文件的巨大范围内的强大的文本转换工作台。它是在可在同一时间内进行,在电力和其变换的灵活性,在文件中,它可以处理和更多的尺寸变换的数是唯一的。数据可以从数据库中提取的多种文本格式和自定义转换可以用VBScript,JScript和其他脚本语言。 TextPipe Pro是你永远用最快的速度和最强大的文字处理软件。随着TextPipe的易于使用的界面,您可以在几秒钟内你会带你小时与其他软件实现。没有两个文本处理任务都是一样的 – 只有TextPipe可以提供灵活性和令人难以置信的文字处理能力,以完成这项工作。 TextPipe Pro是文本处理应用程序,采用一组文件和应用一组操作或过滤器,以每个文件的转机。每个过滤器进行操作,如搜索和替换,添加文本的左边距,将行字符等结束,然后先用该过滤器将结果传递到下一个过滤器,就好像整个文件已被处理。 TextPipe Pro有添加,删除,替换,排序和转换文本范围广泛的100多个过滤器。如PC,Macintosh电脑,大型机和Unix格式之间进行转换的文件常见的任务是很好的满足。随着TextPipe Pro的命令行自动化或COM接口,复杂的处理任务,无需用户干预的情况下进行。 TextPipe Pro 注册版 过滤器还包括可以分割和合并文件,添加行号,自动换行,OEM和ANSI之间转换,并删除重复行/ HTML/列/二进制字符/ ANSI代码。 网站可以容易地保持与多文件搜索和替换,并加入标准文本(例如版权信息或横幅广告)的每个文件的开始和结束的功能。多个空格和空行,可迅速取出,以减少下载时间。 TextPipe取代了实质性的一套小文本实用程序提供统一的,易于使用的图形用户界面。一般用户来说,网络作家,管理员和程序员可以很容易地用最少的技术知识进行复杂的文字处理。 TextPipe可以执行自动或手动换行转换和从DOS,UNIX的Amiga和Macintosh的输入格式,并转换大型机固定长度的记录(具有用户指定的长度)来分隔行。 为了使文件更小和/或更具可读性,TextPipe Pro提供过滤器: ·删除二进制字符 ·删除ANSI转义序列 ·删除从一开始就与线年底空白 ·删除空行 ·压缩多个空格为一个空格 ·删除HTML和SGML代码 ·删除或解决退格 ·更改IBM的绘制字符+和|和 – 要操作文件中的文本,TextPipe Pro提供过滤器: ·执行任意的映射。用户可以指定一个字符串被输出为每个的256个可能的字符码。字符串可以包含嵌入控制字符 ·搜索和替换:用区分大小的选项。它给出了搜索的长度和替换字符串 – 用于文本替换在二进制文件中免费有用 ·添加一个前缀每一行(例如,添加引用回复电子邮件) ·更改字符大小,大字母,小字母,切换的情况下,标题案例,句首字母大,随机案例 ·ASCII码和EBCDIC之间的切换字符表示。有用的主机接口 ·Windows的OEM和ANSI之间切换。有用的Windows和非英语语言 TextPipe Pro 特别版 TextPipe Pro 提供以下文件处理选项: ·可以跳过二进制文件。用户还可以被提示是否要处理二进制文件或者不 ·处理每个文件之前会提示 ·可以保留原来的文件的时间和日期 ·可递归到子文件夹 ·可以处理任意大小的文本和二进制文件 ·测试模式,其中输出到一个新的文件,而不是覆盖原来的文件 特殊功能包括: ·筛选器列表可以保存和打开 ·文件可以快速地与他们相关联的应用程序查看通过通配符在命令行中选定,在应用程序,拖放从资源管理器或通过浏览对话框中指定 – ·许多文件添加到列表中的方法 ·接受命令行列表的文件名,包括文件,可能没有其他被指定的大名单。可以配合使用打开列表,文件和保存目录为文件图标。 ·接受的命令行和列表文件通配符。通配符在处理过程中扩展。 ·在输入文件大小没有限制
Grid++Report是一款C/S与B/S集成报表工具,功能全面易学易用。C/S开发适用于VB.NET, C#, VB, VC, Delphi, BCB, 易语言等。B/S开发适用于ASP.NET, ASP, PHP, JSP(Java)等,支持所有操作系统服务器与WEB服务器。开发C/S报表与B/S报表共享相同的开发知识与设计资源。提供独有的报表查询显示功能,让报表查询显示、打印、打印预览及数据导出等功能集成一体化实现。轻松实现表格报表、动态报表、多层表头、票据套打、交叉表、统计图表、表中表及各种特殊报表等,是中式报表的最佳开发工具。提供详尽帮助文档与各种编程平台下的丰富例子,安装中包括可直接运行例子程序,安装后即刻体验此报表工具。Unicode编码,多国语言集成支持。历经数年发展,多家有影响力的通用软件厂商选用,用户遍布各行各业,已经成为用户受众面最广的国产报表工具。 Grid++Report 报表组件具有如下特点: 1、支持C/S报表与B/S报表开发,支持全部主流开发语言。C/S开发:VB.NET、C#、VB、VC、Delphi等,B/S开发:ASP.NET、ASP、PHP、JSP等,支持所有WEB服务器。 2、多国语言集成支持与UNICODE编码支持,方便开发多国语言软件。 3、功能强大,稳定高效:实现表格报表、多层表头、票据套打、交叉表等各种报表非常简便;报表完全可编程定义,适合开发通用软件中的动态报表。 4、独有的报表查询显示功能:提供报表查询与输出的集成一次性实现,保证数据不同展现方式的一致性与完整性。 5、报表数据来源丰富:支持绑定(报表数据拉模式)与非绑定(报表数据推模式),一切数据库数据与其它数据都可以作为报表数据源。 6、提供图表功能,包括:饼图、叠加饼图、柱状图、气泡图、折线图、曲线图、散列点图等,支持三维图形。 7、报表数据导出格式丰富,格式包括:Excel、RTF、PDF、图像、HTML、文本,CSV 等。 8、支持数十种一维条码,支持PDF417与QRCode这两种最常用的二维条码,条码打印精度高且易读取。 9、提供脚本编程功能,直接在报表模板中自定义报表行为,采用通用的JScript与VBScript脚本引擎。 10、特有的分组单元格合并功能,轻松实现常见的中国式报表分组在列中展现并垂直居中要求。 11、全中文界面,针对中国式报表进行了很多专门实现,如:表格报表、财务金额线、大金额、发票圈叉图标、负数红字、多层表头等。很多在国外报表工具中很难实现的功能都可以轻易实现。 12、提供丰富交互事件,轻松实现报表行为自定义、穿透(透视)查询和报表交互。 13、重新发布简单:C/S报表只需分发两个DLL文件;B/S报表只要在WEB服务器布署报表网页与报表插件安装包,服务端不需其它配置,客户端零配置。 14、易学易用:完全可视化设计,完善的复制/剪切/粘贴(Copy/Cut/Paste)和恢复重做(Undo/Redo)功能,专业的拖放操作与即时编辑功能。 15、编了完整详尽的帮助文档。提供了丰富例程,C/S报表包括VB.NET、C#、VB、VC、Delphi、C++Builder、VFP、中文编程易语言,B/S报表包括ASP.NET,ASP,PHP,JSP。 Grid++Report 网站:http://www.rubylong.cn Grid++Report 演示:http://www.rubylong.cn/WebReport
第1章 页面特效 1.1 HTML页面反向显示 1.2 页面自动最大化 1.3 页面自动刷新 1.4 页面的后退、刷新、前进 1.5保护网页源代码 1.6 保护自己的网页不被放入框架 1.7 保护自己的网页不被放入框架 1.8 打印页面的出错原因 1.9 当前网页调用其他网页 1.10 倒计时载入页面 1.11 定义网页的关键字 1.12 进入页面同时弹出欢迎对话框 1.13 禁止网页另存 1.14 禁止页面加入缓存 1.15 离开页面时弹出对话框 1.16 判断页面是否添加了W3C声明 1.17 屏蔽网页中的脚本 1.18 以频道模式打开页面 1.19 自动识别网页类型 1.20 在网页中动态添加Script脚本 1.21 用JavaScript随机修改页面的标题 1.22 判断网页加载完毕 1.23 嵌入网页的播放器 1.24 设置指定网页为主页 1.25 使用JavaScript传递页面参数 1.26 页面被冻结 第 2章 按钮特效 2.1 页面刷新按钮 2.2 按回车调用登录按钮 2.3 动态创建按钮 2.3 平面按钮 2.4 按钮的嵌入效果 2.5 按钮改变状态栏信息 2.6 定义按钮的热键 2.7 取得控件的绝对位置 2.8 删除时的确认提 示 2.9 按钮只能单击一次 2.10 防止按钮连击 2.11 图片式按钮 2.12 文字显示在按钮底部 2.13 选择不同的列表项就显示不同的按钮 2.14 使用按钮控制文本渐变 2.15 翻页效果的公告栏 2.16 动态设置控件的事件 第3章 字符串文本和输入框特效 3.1 只带下划线的输入框 3.2 限定文本框可输入字符数 3.3 文字过长的省略号 3.4 输出26个英文字母 3.5 首字母变为大 3.6 textarea自适应文字行数 3.7 禁止文本框的拷贝和粘贴 3.8 控制两个文本框只输其一 3.9 判断编辑器中是否包含特殊字符 3.10 判断文本中回车的数量 3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19 文本框简单的单击效果 3.20 文字的打字效果 3.21 文字滚动 3.22 文字滑动 3.23 文字跳动特效 3.24 荧光效果的文本 3.25 文字逐个闪亮-霓虹灯效果 3.26 旋转式的变色文字特效 3.27 黑客帝国中的字符下落效果 3.28 获取表单中文本框的个数 3.29 光标停在文字最后 3.30 分行取textarea中的值 3.31 自动插入文本 3.32 选取textarea的指定行 3.33 文本放大镜 3.34 文本框的默认输入法 3.35 文本框显示网页中选中的内容 3.36 文字的垂直滚动 3.37 文字幻灯片 3.38 随机动态文字效果 3.39 实现textarea的自动滚动 3.40 使用marquee实现文字上下滚动 3.41 类似安装效果的textarea滚动 3.42 始终显示在最顶端的文本 3.43 JavaScript过滤SQL注入字符 3.44 textarea内实现行的翻页效果 3.45 textarea中的文本插入 3.46 查找两段文本中相同的词句 3.47 自动保存网页输出的文本 3.48 文本编辑器 第4章 鼠标特效 4.1 禁用鼠标右键 4.2 使鼠标滚轮失效 4.3 状态栏显示鼠标位置 4.4 点击鼠标右键到指定页 4.5 鼠标放到图片上会显示另外一张图片 4.6 鼠标形状定义大全 4.7 鼠标移入移出时颜色变化 4.8 跟随鼠标的文字 4.9 跟随鼠标的彩色文字 4.10 跟随鼠标的魔法文字 4.11 跟随鼠标的星星 4.12 跟随鼠标的旋转背景 4.13 图片跟随鼠标 4.14 围绕鼠标的文本 4.15 鼠标旁边的提示信息 4.16 鼠标移到下拉框时自动全部打开 4.17 checkbox鼠标移入移出的特效 第5章 层和框架的特效 5.1 div层提示效果 5.2 层自动滚动到最底端 5.3 div的自动滚动 5.4 div的折迭效果 5.5 圆角div 5.6 动态添加iframe框架 5.7 用层实现长文章分页 5.8 iframe自适应高度 5.9 类似MSN的消息提示 5.10 只打印iframe的内容 第6章 下拉列表特效 6.1 下拉框实现多选 6.2 实现两个select的同步 6.3 被选中的列表项下次不能再选 6.4 不带滚动条的select 6.5 从一个下拉列表往另一个下拉列表添加内容 6.6 改变列表项的上下顺序
毕业论文文献综述 计算机科学与技术 《计算机基础》网络课程教学网站 一 前言 网络课程是决定网络教育质量的一个关键要素,随着网络教育的发展,网络课程的数 量也在迅速增长。人们对网络课程评价重要性的认识也逐步提高。这一点,从当前对网 络课程评价的热烈的讨论中可以得到证实。近年来许多学者都对网络课程评价进行过探 讨,发表了大量的相关论文,提出了一批评价量表、量规和指标集。这为本文的研究提 供了可靠的研究基础。 本文在相关概念(评价、教育评价、课程、网络课程、网络教学和网络课件)详尽阐 释、分类缕析的基础上提出网络课程评价的概念、评价的意义、原则和方法;结合国内外 最新的评价研究成果,提出了网络课程评价模式;同时提出了自己的网络课程评价指标体 系。 二 网络课程的设计 在研究过程中,笔者尽最大可能多渠道、多方面采集详尽的中外关于网络教学评价, 信息资源评价和课件评价等相关资料,共收集到相关文章200多篇;相应的指标集、评价 体系、评价量表十几张。在小规模的教学调查、专家咨询和小组研讨的基础上认真分析 评价目标所涉及的各种因素,并将其毫无遗漏地排列出来共计汇总621项指标或标准。然 后,对评价指标进行筛选提炼,对它们进行综合分析处理去掉非本质的、作用不大的, 合并同类项各相关项,除掉重复项,调整互相矛盾的以及有因果关系的因素,这样共筛 选出的211项指标。根据其概念和描述对之进行分类,采用综合和分析(归纳与演绎)的 方法,最后形成一级指标6个(科学性、教学性、使用性、技术性、艺术性、规范性), 二级指标32个形成了指标体系的初步框架,运用统计法和层级分析法确定各指标的权重 ,构成评价指标体系的整体框架,然后运用一致性检验,证明和检验权重设置的合理性 ,提高了指标体系的效度与信度。在此基础上,确定评价标准、划分标准等级,为了使 评价指标体系在使用过程中能更加客观和公正的评价网络课程,笔者在等级划分时引用 模糊数学的模糊函数公式,引入隶属度的概念,增加了指标体系的效度与信度。最后对 指标、权重和标准进一步分析和研究,以筛选或甄别指标,精炼标准,完善指标体系。 本研究的最大的创新之处在于构建了自己的网络课程评价指标体系,尤其是采用层级 分析法求出各指标权重,并在此基础上进行一致检验,获得了满意效果。该评价指标体 系是目前国内少有的完整的评价指标体系。 本研究对于网络课程的质量评价和网络课程的设计都具有一定的指导意义。文中相关 概念的阐述,特别是网络课程评价本质内涵的阐释,澄清了学术界当前关于网络课程评 价的一些模糊或错误的认识:提出的网络课程评价模式为我们评价网络课程提供了理论基 础和具体操作步骤,具有一定的现实意义。笔者提出的网络课程评价指标体系的评价对 象是作为最终产品或阶段性产品的网络课程;可供获取(acquisition)、开发(develo pment)、使用(use)、支持(support),维护(maintenance)或评审(audit)网络 课程资源的人和机构使用,具体包括:网络课程资源的设计者和开发者、学习管理系统( LMS)和学习资源著作工具(AuthoringTool),的开发者、教育机构, 教师和学习者和管理评审机机构。 三.ASP的特点 ASP全称为Active Server Pages,即动态服务器页面,它是一套微软开发的服务器端脚本环境,ASP内含于IIS 3.0以上版本之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、 交互且高效的Web服务器应用程序[18]。 ASP文件(即*.asp文件)与HTML文件类似,但ASP文件可以包含脚本命令,脚本命令 放在<%和%>之间。当用户请求一个*.asp主页时,WWW响应HTTP请示调用ASP引擎,解释被 申请的文件,当遇到与ActiveX Scripting兼容的脚本VBScript或JScript)时ASP引擎调用相应的脚本引擎进行处理。 ASP脚本在服务器端解释执行,结果自动生成符合HTML语言的主页去响应用户的请求。A SP目前已成为目前应用最广泛的动态网页开发工具,同时应用ASP进行网络化的信息管理 系统也逐步得到推广。 以下是ASP独具的一些特点: 1、使用VBScript、JScript等简单易懂的脚本语言,同时结合HTML代码,即可快速地 完成网站的应用程序。 2、使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计,而利用诸如F rontpage或者Dreamweaver等所见即所得的网页编辑软件可以快捷方便地进行编辑,易学 易用。 3、与浏览器无关(Browser Independence),用户端只要使用可执行HTML代码的浏览器,即可浏览ASP所设计的网页 内容。ASP所使用的脚本语言(VBScr
下面是一个简单的VBScript游戏脚本示例,其中包括了一些基本的游戏逻辑和控制流程: ``` Option Explicit ' 游戏状态 Const GAME_STATE_INIT = 0 Const GAME_STATE_PLAYING = 1 Const GAME_STATE_GAMEOVER = 2 ' 游戏对象 Dim player Dim enemies(10) Dim bullets(50) ' 游戏设置 Dim screenWidth Dim screenHeight Dim score Dim gameState ' 初始化游戏 Sub InitGame() screenWidth = 640 screenHeight = 480 score = 0 gameState = GAME_STATE_INIT Set player = CreateObject("Player") player.Init(screenWidth / 2, screenHeight - 50) For i = 0 To UBound(enemies) Set enemies(i) = CreateObject("Enemy") enemies(i).Init(Rnd() * screenWidth, Rnd() * screenHeight / 2) Next For i = 0 To UBound(bullets) Set bullets(i) = CreateObject("Bullet") bullets(i).Init(0, 0) Next End Sub ' 更新游戏状态 Sub UpdateGame() Select Case gameState Case GAME_STATE_INIT ' 等待玩家开始游戏 If GetInput() Then gameState = GAME_STATE_PLAYING End If Case GAME_STATE_PLAYING ' 更新玩家和敌人状态 player.Update() For i = 0 To UBound(enemies) enemies(i).Update() Next ' 检测碰撞 For i = 0 To UBound(enemies) If player.CheckCollision(enemies(i)) Then gameState = GAME_STATE_GAMEOVER End If For j = 0 To UBound(bullets) If bullets(j).IsActive And enemies(i).CheckCollision(bullets(j)) Then bullets(j).Deactivate() enemies(i).Deactivate() score = score + 1 End If Next Next ' 更新子弹状态 For i = 0 To UBound(bullets) bullets(i).Update() Next ' 发射子弹 If GetInput() Then For i = 0 To UBound(bullets) If Not bullets(i).IsActive Then bullets(i).Init(player.x, player.y) Exit For End If Next End If Case GAME_STATE_GAMEOVER ' 显示分数并等待玩家重新开始游戏 MsgBox "Game Over! Your score is " & score If GetInput() Then InitGame() End If End Select End Sub ' 获取用户输入 Function GetInput() GetInput = False If WScript.StdIn.AtEndOfLine Then Exit Function End If Dim input input = WScript.StdIn.ReadLine() If LCase(input) = "quit" Then WScript.Quit End If GetInput = True End Function ' 主循环 Do While True UpdateGame() WScript.Sleep 16 Loop ``` 在这个示例中,我们定义了三种不同的游戏状态,使用了一些基本的游戏对象(如玩家、敌人和子弹),并实现了一些基本的游戏逻辑,如初始化游戏、更新游戏状态、获取用户输入等。你可以根据自己的需要修改和扩展这个示例,以实现更加复杂和有趣的游戏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五角大寨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值