标签: filesystemobject

当它应该被附加时,文本被覆盖

这看起来很容易(我已经完成了一百万次,从来没有遇到过问题),但这让我很伤心.

我想根据Excel电子表格中的内容创建一些SQL脚本.为此,我创建了一个使用以下代码读取文本文件的宏

Dim fso As FileSystemObject
Set fso = New FileSystemObject

Dim stream As TextStream
Set stream = fso.OpenTextFile(filepath, 8, False)
Run Code Online (Sandbox Code Playgroud)

应该打开文本文件以追加并插入我的新值.

不幸的是,它总是被覆盖而不是追加,这让我疯狂.

有任何想法吗?

file-io vba filesystemobject

2
推荐指数
2
解决办法
3万
查看次数

我可以使用FileSystemObject使用其索引从文件夹中获取单个文件吗?

如果文件夹中只有一个文件,我可以在知道其名称的情况下选择它或者遍历文件夹中的文件吗?

(代码是VBS,但它可以是任何东西,FSO在这里是有趣的部分.)

这不适合我:

dim fso
set fso = CreateObject("Scripting.FileSystemObject")
dim myFolder
Set myFolder = fso.getFolder("E:\test")
Dim myfiles
Set myfiles = myFolder.Files

WScript.Echo myfiles.Item(0).Path
Run Code Online (Sandbox Code Playgroud)

两者都没有WScript.Echo myfiles(0).Path奏效.(测试指数0,1都失败了.)

使用for each来获得一个文件似乎有点过分.此外,我不应该以某种方式迭代一个简单的For循环,而不是For Each?所以必须有索引......我似乎无法找到它们.

vbscript filesystemobject fso

2
推荐指数
1
解决办法
3469
查看次数

什么是VBA中的"Dim fso,MyFile,FileName,TextLine"?

我收到了一位来自这里的好朋友的代码,他们愿意花时间和精力与新手分享他们的知识:

Sub ReadLinesFromAFileOneAfterAnother ()
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, MyFile, FileName, TextLine

Set fso = CreateObject("Scripting.FileSystemObject")

FileName = "c:\testfile.txt"

Set MyFile = fso.OpenTextFile(FileName, ForReading)

'' Read from the file
Do While MyFile.AtEndOfStream <> True
    TextLine = MyFile.ReadLine

    '' Do stuff to TextLine

Loop
MyFile.Close
End Sub
Run Code Online (Sandbox Code Playgroud)

虽然我知道这段代码执行了什么任务,但我仍然想知道它的每个元素的含义和作用.任何人都可以向我解释一下这段代码的第三行是什么:

Dim fso, MyFile, FileName, TextLine
Run Code Online (Sandbox Code Playgroud)

什么是"fso"首先?我知道它代表"文件系统对象",但它没有什么可以向我解释它实际是什么以及它实现了什么.这三个词后面的意思是什么("MyFile","FileName","TextLine")?它们是某种参数吗?

我读过这个:http: //msdn.microsoft.com/en-us/library/h7se9d4f(VS.85).aspx

这个:http://msdn.microsoft.com/en-us/library/ebkhfaaz(VS.85).aspx

但感觉就像那些自己能够写出来的人那些材料一样 - 我几乎什么都不懂.当然,有些事情或多或少都很清楚,但还有很多其他的术语和文字我都不知道!最终,没有一个完整而清晰的画面.

所以,我放弃了,决定回到这里.这个网站可能是互联网上为数不多的(实际上我还没有遇到任何其他网站)在其规则中声明的网站之一:"毫无疑问太琐碎或太"新手"".这给了我一个问这个问题的理由.

所以,请任何人,用简单的语言向我解释"fso"是什么.确切地说,上面代码的第三行是关于什么的.

谢谢大家.

scripting vba createobject filesystemobject

1
推荐指数
2
解决办法
1万
查看次数

无法使用ASP DeleteFile方法删除文件

我试图在用户点击链接删除它时删除图像文件.我没有错误,错误号为零.但是,该文件不会被删除.我可以保存照片文件,但不能因某些原因删除它们.这是我的代码:

PhotoFile = "\images\networkPartners\" & rs(fieldName)
PhotoPath = Server.MapPath(PhotoFile)
dim ServerFSO
Set ServerFSO=Server.CreateObject("Scripting.FileSystemObject")
if ServerFSO.FileExists(PhotoPath) then
    response.Write(PhotoPath)

    ServerFSO.DeleteFile(PhotoPath)
end if
set ServerFSO=nothing
Run Code Online (Sandbox Code Playgroud)

当response.write命中时,我确实得到了实际的文件路径.("C:/ web/images"等)一直到文件名.所有大写都是正确的等等.再次,当我执行"on next resume next"并写出错误号和字符串时,根本没有错误.

呼叫:

    ServerFSO.DeleteFile(PhotoPath, true)
Run Code Online (Sandbox Code Playgroud)

导致错误:

Microsoft VBScript compilation error '800a0414'

Cannot use parentheses when calling a Sub

/folder/file_edit.asp, line 32

ServerFSO.DeleteFile(PhotoPath, true)
-------------------------------------^
Run Code Online (Sandbox Code Playgroud)

file-io filesystemobject asp-classic

1
推荐指数
1
解决办法
5970
查看次数

使用ASP从文本文件中删除选定的行?

我有一个循环,在.ini文件中找到重复的行.我可以愉快地找到重复的行,并使用FileSystemObject将新行写入文件,但是...我似乎无法找到如何删除重复的行.我想要做的是删除行号,因为我已经确定了相关的行号.

是否有本地方法来执行此操作,还是重写文件减去重复行的情况?

任何帮助是极大的赞赏.

谢谢.

我找到重复条目的方法如下:

  Do While Not file.AtEndOfStream
    intLineNumber = intLineNumber + 1
    strReadLineText = file.ReadLine
    If strSearchText <> "" And InStr(strReadLineText, strSearchText) > 0 Then
      session("message") = "Line Exists on " + Cstr(intLineNumber)
      '' # delete duplicate line...

    End If
  Loop
  file.Close()
Run Code Online (Sandbox Code Playgroud)

你可以看到我的评论在哪里,我希望删除找到的行.

filesystemobject asp-classic

0
推荐指数
1
解决办法
1396
查看次数

0
推荐指数
2
解决办法
3万
查看次数

如何在javascript中乘以空格以便在ActiveX FSO Write()方法中使用

例如:

var a = " ";
var b = "";
b = a * 8;
alert(b +"this far to the right");
Run Code Online (Sandbox Code Playgroud)

注意:我不想使用,因为ActiveX FSO将用于写入文本文件而不是html文件.所以它只需要空格:

我正在努力实现的更详尽的细节:

我试图让ActiveX FSO在提交表单后从HTML订单表单写入文本文件,然后继续将订单写入文本文件.文本文件需要采用特定格式,以便Microsoft Dynamics接受作为导入销售.

如下所示:客户代码 空间 商品代码 空间 数量 空间:

import.txt减去字符串长度,其中slot =要填充的剩余空格.

C242299A *4 white spaces* 2890 *12 white spaces* 20 *6 white spaces*
[------------][----------------][--------]
12 char slots    16 char slots   8 char slots
Run Code Online (Sandbox Code Playgroud)

write.js将创建这个import.txt文件(这是我需要帮助的部分)

var customercode = document.getElementById("customercode").value;
var itemcode = document.getElementById("itemcode").value;
var quantity = document.getElementById("quantity").value;

var fso = new ActiveXObject("Scripting.FileSystemObject");
var …
Run Code Online (Sandbox Code Playgroud)

javascript jquery filesystemobject activexobject fso

0
推荐指数
1
解决办法
1312
查看次数