如何用VB建立文本文件?

qq28262313 2008-12-01 05:18:22
建立要求:
先写入指定字符串ABCDE(第一行)
从TEXTBOX中读取字符串221.228.255.1 ,并写入 set IP="221.228.255.1" (第二行)
再写入指定字符串EDCBA
...全文
661 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq28262313 2008-12-02
  • 打赏
  • 举报
回复
我想编写个SETUP程序,产生2个BAT文件:
C:\WINDOWS\IN.BAT

set NIC="本地连接"
set IP="32.114.1.41"
set MASK="255.255.255.0"
set GW="32.114.1.2"
set GM=1
set DNS="32.114.94.2"
@netsh interface ip set address name=%NIC% source=static addr=%IP% mask=%MASK% gateway=%GW% gwmetric=%GM%
@netsh interface ip set dns name=%NIC% source=static addr=%DNS%
@netsh interface ip set wins name="本地连接" source=static addr=none

C:\WINDOWS\OUT.BAT

set NIC="本地连接"
set IP="221.230.157.11"
set MASK="255.255.255.0"
set GW="221.230.157.1"
set GM=1
set DNS="221.228.255.1"
@netsh interface ip set address name=%NIC% source=static addr=%IP% mask=%MASK% gateway=%GW% gwmetric=%GM%
@netsh interface ip set dns name=%NIC% source=static addr=%DNS%
@netsh interface ip set wins name="本地连接" source=static addr=none


其中IP,GW和DSN从窗口TEXT中读取,读取前先判断一下IP输入是否正确


我是新手编的东西老是通过不了,又找不到原因,不能为继了呀!!!所以请教大家帮帮我.下面是没写完的代码:
Private Sub Command1_Click()

If Dir(App.Path & "c:\windows\in.bat") <> "" Then
Shell "del c:\windows\in.bat", vbMiniimizednoFocus
End If

If Dir(App.Path & "c:\windows\out.bat") <> "" Then
Shell "del c:\windows\out.bat", vbMiniimizednoFocus
End If

ip1 = Val("Form2.Text1")
ip2 = Val("Form2.Text2")
ip3 = Val("Form2.Text3")
ip4 = Val("Form2.Text4")
gateway1 = Val("Form2.Text5")
gateway2 = Val("Form2.Text6")
gateway3 = Val("Form2.Text7")
gateway4 = Val("Form2.Text8")
dns1 = Val("Form2.Text9")
dns2 = Val("Form2.Text10")
dns3 = Val("Form2.Text11")
dns4 = Val("Form2.Text12")
ip = ip1 < 1 Or ip1 > 250 Or ip2 < 1 Or ip2 > 255 Or ip3 < 1 Or ip3 > 255 Or ip4 < 1 Or ip4 > 255 '判断IP,网关和DNS输入是否正确
gateway = gateway1 < 1 Or gateway1 > 250 Or ipgateway2 < 1 Or gateway2 > 255 Or gateway3 < 1 Or gateway3 > 255 Or gateway4 < 1 Or gateway4 > 255
dns = dns1 < 1 Or dns1 > 250 Or dns2 < 1 Or dns2 > 255 Or dns3 < 1 Or dns3 > 255 Or dns4 < 1 Or dns4 > 255

If ip Then MsgBox ("IP输入错误")
If gateway Then MsgBox ("网关输入错误")
If dns Then MsgBox ("DNS输入错误")
If Not (ip And gateway And dns) Then '如果全部输入正确,则生成批处理OUT.BAT 文件
'
'
'
'
'关闭本窗口并激活内网IP输入窗口
End If


End Sub

Private Sub Form_Load()
Dim ip1, ip2, ip3, ip4 As Integer
Dim gateway1, gateway2, gateway3, gateway4 As Integer
Dim dns1, dns2, dns3, dns4 As Integer
Dim ip, gateway, dns As Boolean


End Sub





SYSSZ 2008-12-01
  • 打赏
  • 举报
回复

Private Sub Command1_Click()
Open "C:\002.txt" For Input As #2

Do Until EOF(2)

Line Input #2, nextline
p = InStr(nextline, "221.228.255.1")
MsgBox p
If p <> 0 Then


b = "set IP=" & """" & Mid(nextline, InStr(nextline, "221.228.255.1"), 13) & """"
End If
Loop

Close #2
Open "C:\001.txt" For Output As #1

Print #1, "ABCDE"



Print #1, b
Print #1, "EDCBA" '如果不是另起一行,就加在b的后面

Close #1
LCAAA 2008-12-01
  • 打赏
  • 举报
回复
Dim SouSaveFileName As String
Dim DesSaveFileName As String '保存文件名路径
Dim strtmp As String
On Error GoTo errinfo
Ru:
SouSaveFileName = "CheckDB"
With CommonDialog1
.DialogTitle = "保存结果"
.FileName = "Ch" '名字
.CancelError = False
'ToDo: 设置 common dialog 控件的标志和属性
.Filter = "所有文件 (*.TXT)|*.TXT"
.ShowSave
DesSaveFileName = .FileName
End With
'是否覆盖原有文件
If Len(Dir(DesSaveFileName)) > 0 Then
'是则继续 否则重新选择文件
If MsgBox("该文件名已存, 是否覆盖原有文件?", vbYesNo) = vbYes Then
Kill DesSaveFileName
Else
GoTo Ru
End If
End If
If Not UCase(SouSaveFileName) = UCase(DesSaveFileName) Then '前后不相同则进行保存
Dim FileNumber As Integer
Screen.MousePointer = 11
strtmp = "第一服务:" & servername1 & " 数据库:" & db1 & vbCrLf
strtmp = strtmp & "第二服务:" & servername2 & " 数据库:" & db2 & vbCrLf
strtmp = strtmp & "--------------------------------------比较日期:" & Date
FileNumber = WritePrivateProfileString("服务数据库-------------------------------------------------", "", vbCrLf & strtmp, DesSaveFileName)
strtmp = TxtResultTable1
FileNumber = WritePrivateProfileString("第一服务数据库不同表名-------------------------------------------", "", vbCrLf & strtmp, DesSaveFileName)
strtmp = TxtResultTable2
FileNumber = WritePrivateProfileString("第二服务数据库不同表名--------------------------------------------", "", vbCrLf & strtmp, DesSaveFileName)
Screen.MousePointer = 0
End If
fvflove 2008-12-01
  • 打赏
  • 举报
回复

Option Explicit

Private Sub Command1_Click()
Open "C:\Demo.Txt" For Output As #1
Print #1, "ABCDE"
Print #1, "set IP=""" & Text1.Text & """" 'Text1 中是你的IP地址
Print #1, "EDCBA"
Close #1
End Sub

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧