注册 登录
编程论坛 VB6论坛

求教如何在ini文件最后一行写入写入数据

红领巾少年 发布于 2020-07-10 11:25, 2178 次点击
[local]1[/local]
求教
如图,在最后一行写入数据。[]里的序号是依次往下排的。
如:
[616]
类型=4
敏感词=0000000
禁言时间=
7 回复
#2
红领巾少年2020-07-13 15:16
只有本站会员才能查看附件,请 登录
#3
风吹过b2020-07-13 21:04
1、如果你的iNI文件不超过 32k,那么直接使用 INI的API进行读写。
当一个新的主键被写入时,会自动被写到INI文件的最后面。

2、如果文件大小超过了,那就自己处理吧!
使用文件操作函数,读取全部,然后写入读出来的内容,然后再附加需要追加的新的内容。

#4
ZHRXJR2020-07-13 21:51
应该不难
程序代码:

Dim BB As Integer

Private Sub Command2_Click()
'添加记录
If Text2.Text = "" Then
    MsgBox "请填写类型!"
    Exit Sub
End If
If Text3.Text = "" Then
    MsgBox "请填写敏感词!"
    Exit Sub
End If
Open App.Path & "\敏感词.ini" For Append As #1
    Print #1, Text1.Text
    Print #1, "类型=" & Text2.Text
    Print #1, "敏感词=" & Text3.Text
    Print #1, "禁言时间=" & Text4.Text
Close #1
Unload Me
写入数据.Show
End Sub

Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Open App.Path & "\敏感词.ini" For Input As #1
Do While Not EOF(1)
Input #1, AA
    If Left(AA, 1) = "[" Then
        BB = Val(Right(AA, Len(AA) - 1))
    End If
Loop
Close #1
BB = BB + 1
Text1.Text = "[" & BB & "]"
End Sub

只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2020-7-13 21:53编辑过]

#5
红领巾少年2020-07-14 10:06
回复 4楼 ZHRXJR
非常感谢版主发的代码亲测可用。

我又小改了下
程序代码:

Dim BB As Integer

Private Sub Command1_Click()
Form_Load '刷新,载入最新数据
'
添加记录
If Text2.Text = "" Then
    MsgBox "请填写类型!"
    Exit Sub
End If
If Text3.Text = "" Then
    MsgBox "请填写敏感词!"
    Exit Sub
End If
Open App.Path & "敏感词.ini" For Append As #1
    Print #1, '换行
    Print #1, Text1.Text
    Print #1, "类型=" & Text2.Text
    Print #1, "敏感词=" & Text3.Text
    Print #1, "禁言时间=" & Text4.Text; ';代表不换行
Close #1
Text6.Text = ("添加成功:序号【" & Text1.Text & "】,类型【" & Text2.Text & "】,敏感词【" & Text3.Text & "】.添加时间:" & Now())'日志
Text5.Text = Text5.Text + Text6.Text & vbCrLf
Text5.SelStart = Len(Text5)
Form_Load '刷新,载入最新数据
'
Unload Me
'
写入数据.Show
End Sub

Private Sub Command2_Click()
Form_Load
End Sub

Private Sub Form_Load()
Text1.Text = ""
Text2.Text = "4"
'Text3.Text = ""
Text4.Text = ""
Open App.Path & "敏感词.ini" For Input As #1
Do While Not EOF(1)
Input #1, AA
    If Left(AA, 1) = "[" Then
        BB = Val(Right(AA, Len(AA) - 1))
    End If
Loop
Close #1
BB = BB + 1
Text1.Text = "[" & BB & "]"
End Sub



添加敏感词的时候如果要查一下ini文件里面有没有重复的怎么写呢?如果有重复的话就不添加,没有重复的话就添加。

[此贴子已经被作者于2020-7-14 10:32编辑过]

#6
红领巾少年2020-07-14 11:16
[local]1[/local]
[local]2[/local]


[local]1[/local]
贴个成品图

[此贴子已经被作者于2020-7-14 11:18编辑过]

#7
红领巾少年2020-07-14 11:19
[local]1[/local][local]2[/local]
#8
红领巾少年2020-07-14 11:20
咋贴不上图了呢
1