以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 关于文件监视器 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=7365)
|
-- 作者:sophia
-- 发布时间:2010/6/11 16:05:00
-- 关于文件监视器
在C盘根目录下有一data文件夹,其中有一文本文件a.txt和一图片文件Sunset.jpg。想用文本文件内容自动去改变图片文件的文件名,用文件监视器能做到吗?要是能做到代码怎样写? 例如:文本文件内容如图: 图片文件原为Sunset.jpg,改为:gk001.jpg。 此主题相关图片如下:文本文件内容.jpg
|
-- 作者:狐狸爸爸
-- 发布时间:2010/6/11 16:32:00
--
可以监视文本文件,这样输入内容后保存,系统可以监视到,然后读取文本文件的内容,据此改图片文件的名称
不过怪怪的感觉
[此贴子已经被作者于2010-6-11 16:33:33编辑过]
|
-- 作者:sophia
-- 发布时间:2010/6/11 17:13:00
--
我是照相用的,一个人照完照片,自动去改名,而不是手动该。
取文本文件的内容,据此改图片文件的名称用代码怎么实现呢?谢谢
|
-- 作者:狐狸爸爸
-- 发布时间:2010/6/11 17:52:00
--
何不直接用foxtable输入文件名去改?
你这样转的湾也太大了。
监控指定目录,一旦发现有新生成的图片文件,就打开一个窗口让用户输入文件名,然后改名。
|
-- 作者:sophia
-- 发布时间:2010/6/11 18:16:00
--
是这样的,先在我这里开票,票上有照相本人的二维码信息,然后再到另外一个地方去照相,照完相后,用扫描枪扫描其二维码并形成一文本文件,再把照相图片和文本文件通过无线的形式传到我这里(这个已经能实现),用文件监视器做到自动改名。这样照片文件名就是其本人名,不会出错。我现在就是用的“打开一个窗口让用户输入文件名,然后改名”的方法,效率低还容易出错。
您就告诉我在文件监视器中,读取文本文件的内容,据此改图片文件的名称用代码怎么实现吧!
|
-- 作者:狐狸爸爸
-- 发布时间:2010/6/11 18:33:00
--
你就用文件监视器的FileCreated事件,监控那个目录,如果有图片文件生成,就读取约定的文本文件的内容(就是扫描生成的文本文件),将新生成的图片文件改名。
我感觉还不如将姓名扫描到foxtable呢。
[此贴子已经被作者于2010-6-11 18:36:05编辑过]
|
-- 作者:sophia
-- 发布时间:2010/6/11 18:47:00
--
就像1楼说的例子,在FileCreated事件中,代码怎么写呢?
|
-- 作者:sophia
-- 发布时间:2010/6/12 7:43:00
--
难道在狐表文件监视器里,做不到读取文本文件的内容,据此改图片文件的名称吗?
|
-- 作者:狐狸爸爸
-- 发布时间:2010/6/12 8:03:00
--
怎么可能啊,先设置文件监视器,指定指定的目录和要监视的文件类型,然后设置FileCreated事件代码。
读取文本文件和重命名文件的帮助:
ReadAllText
读取文本文件的内容。
语法:
ReadAllText(File, Encoding)
File: 要读取的文件的文件名和路径 Encoding: 可选参数,Encoding类型,可选的编码有:
Default ASCII BigEndianUnicode Unicode UTF32 UTF7 UTF8
Default表示系统编码,对于中文操作系统,通常是GB2312
示例一
读取并显示指定文本文件的内容:
Dim s As string = FileSys.ReadAllText("c:\\data\\table.txt") Output.Show(s)
示例二
一般不需要指定文本文件的编码,ReadAllText会尝试自动检查。 但是如果读取的文本文件出现乱码,那么应该考虑明确指定文件编码,例如:
Dim s As string = FileSys.ReadAllText("c:\\data\\table.txt", Encoding.Default) Output.Show(s)
RenameFile
重命名文件。
语法
RenameFile(File, NewName)
File:要重命名的文件。 NewName:新的文件名,不包括目录。
例如:
FileSys.RenameFile( "c:\\data\\Test.txt", "SecondTest.txt")
将文件“c:\\data\\Test.txt”重命名为“SecondTest.txt”。
|
-- 作者:狐狸爸爸
-- 发布时间:2010/6/12 8:07:00
--
感觉你的设计非常不合理,不如在照相地方的电脑装上foxtable,使用文件监视器,设置FileCreated事件,一旦发现有照片生成,就打开一个窗口,然后将姓名扫描进窗口的文本框,据此文本框的内容更改图片文件名称。
|