2012-03-02 55 views
1

我想检查与一个VBScript如果文本文件,它会检查:"C:\Temp\CAD_Kunde.txt"存在,何时不应该创建一个包含这样的文字:的VBScript如果文本文件存在,并且在不创建一个包含预置文本

1 
BEHR;B18 SP4;B18 SP7;0 
AUDI;B19 SP3;0 
BMW;B19 SP3;0 
BIT;B18 SP4;B19 SP3;B16 SP9;0 
CHRYSLER;B18 SP4;0 
CAE_64;B19 SP3;0 
CNHTC;B19 SP3;0 
DAF;B19 SP3;0 
DASSAULT;B18 SP7;B19 SP3;0 
DFCV;B19 SP3;0 
FORD;B18 SP4;0 
FREIGHTL;B19 SP3;0 
FUSO;B19 SP3;0 
HINO;B19 SP3;0 
HONDA;B19 SP3;0 
IVECO;B19 SP3;0 
MAN;B19 SP3;0 
NISSAN;B19 SP3;0 
MB;B19 SP3;0 
PACCAR;B19 SP3;0 
PORSCHE;B19 SP3;0 
PORSCHE_HYBRID_DX;B19 SP3;0 
PSA;B19 SP3;0 
RENAULT;B19 SP3;0 
RVI;B18 SP4;0 
SCANIA;B19 SP3;0 
TELCO;B19 SP3;0 
UD_TRUCK;B17 SP4;0 
VOLVO_CAR;B18 SP4;0 
VOLVO_TRUCK;B19 SP3;0 
V5_MM;B18 SP4;0 
V5_BM;B19 SP3;0 
V5_TEST;B19 SP9;0 
VW;B19 SP3;0 

文本文件中的文本应该使用相同的格式创建。

编辑:好吧,我没有部分来检查文件的存在,什么时候不创建它。现在我需要帮助来在else条件中实现写入文件的部分。

<SCRIPT Language="VBScript"> 
Option Explicit 
Dim oTxtFile 
With (CreateObject("Scripting.FileSystemObject")) 
If .FileExists("C:\Temp\Kunde.txt") Then  
Else  
Set oTxtFile = .CreateTextFile("C:\Temp\Kunde.txt") 
oTxtFile.Close 
End If 
End With 
</script> 

回答

1

请看看herehere的快速启动。

---后提问者编辑---

啊,现在我们正在某处。在堆栈溢出问题上,我们希望问题的一些努力,而不是“你能写我的代码吗?”的问题。

dim filesys, filetxt 
Const ForReading = 1, ForWriting = 2, ForAppending = 8 
Set filesys = CreateObject("Scripting.FileSystemObject") 
Set filetxt = filesys.OpenTextFile("c:\somefile.txt", ForAppending, True) 
filetxt.WriteLine("Your text goes here.") 
filetxt.Close 

这将创建并写入文本到文本文件里:

检查,如果该文件不存在后,如果您打开ForWriting模式下的文本文件和创建选项设置为True会更容易些。 现在我们必须填写你的文字。这将是最简单的,如果你打开Excel和复制粘贴到B列的文字,然后:

  1. 添加在单元格A1以下文字:filetxt.WriteLine("
  2. 添加单元格C1以下文字:")
  3. 类型在该式中柱D1:=A1 & B1 & C1
  4. 复制粘贴单元格A1,C1和D1向下对B列
  5. 复制的最后填充的单元粘贴在列d到脚本的文本,其中filetext.WriteLine("Your text goes here.")陈述。

并运行您的脚本。

最终解决方案:

Option Explicit 
dim filesys, filetxt 
Const ForReading = 1, ForWriting = 2, ForAppending = 8 
Set filesys = CreateObject("Scripting.FileSystemObject") 
If not filesys.FileExists("C:\Temp\Kunde.txt") Then 
    Set filetxt = filesys.OpenTextFile("C:\Temp\Kunde.txt", ForWriting, True) 
    ' 
    ' Copy - Paste the appropriate filetext.WriteLine statements here 
    '   
    filetxt.Close 
End If 
+0

您的文章是没有帮助我编辑了我自己的职位。当你知道VBScript时,请看看我的编辑。 – user1225282 2012-03-02 10:02:50

+0

你的脚本工作正常,但我用'ForWriting'。现在它随时覆盖文件。我如何首先让它检查文件是否存在,何时存在什么也不做,但是当它不存在时用文本创建文件? – user1225282 2012-03-02 10:38:19

+0

你已经创建了你自己!但我会通过编辑我以前的帖子来帮助你。并且不要忘记接受它作为'正确的答案',因为它可以帮助你;)。 – AutomatedChaos 2012-03-02 10:44:15

相关问题