2012-03-02 51 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

相關問題