Board logo

标题: 请大家帮帮忙 [打印本页]

作者: smallyun     时间: 2008-4-21 15:01    标题: 请大家帮帮忙

我想在一指定ini 指定的标记 [123] 里写入指定的内容,请问我该如何编写?
例如
我想在smallyun.ini文件的[baby]标记下插入行内容 baba我该怎么编写


假如smallyun.ini的内容是

[123]
1111=
456=
888=
[baby]
1234=
aaaa=
[yyy]
qqq=
www=

我想在 [baby]与[yyy]之间插入内容,不知道如何编写。
高手请指点一下。
作者: terse     时间: 2008-4-21 15:38
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (smallyun.ini) do (
echo %%i
  if "%%i"=="[baby]" set n=a
  if defined n echo 插入aaaaa&set n=
)
pause
作者: smallyun     时间: 2008-4-22 10:22
非常感谢
作者: smallyun     时间: 2008-4-22 10:27
只能显示,不能写入到smallyun.ini文件里哦。
作者: bat-zw     时间: 2008-4-22 10:46    标题: 已测试:

CODE:  [Copy to clipboard]
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('type smallyun.ini') do (
     set /a n+=1
     if !n! equ 1 (
                     echo %%i>smallyun.ini
                     ) else (
                              if "%%i"=="[baby]" (
                                                           echo %%i>>smallyun.ini&echo baba>>smallyun.ini
                                                           ) else (
                                                                    echo %%i>>smallyun.ini
                                                                    )
                              )
    )
)
pause>nul

作者: 26933062     时间: 2008-4-22 10:55
楼上是用什么编辑器写的代码吧,很好看,但不利于阅读。
另:代码可以少一个if判断。
CODE:  [Copy to clipboard]
@echo off
for /f "delims=" %%i in ('type smallyun.ini') do (
    if not defined n (
       set n=a&echo %%i>smallyun.ini
        ) else >>smallyun.ini echo %%i
    if "%%i"=="[baby]" >>smallyun.ini echo baba   
)
pause>nul

作者: bat-zw     时间: 2008-4-22 11:03
我用的就是txt,这是我的书写习惯,呵呵。
作者: bat-zw     时间: 2008-4-22 11:12    标题: 谢谢指教:

是可以少个if,我怎么没想到,谢谢指教,修改如下:
CODE:  [Copy to clipboard]
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('type smallyun.ini') do (
     set /a n+=1
     if !n! equ 1 (
                   echo %%i>smallyun.ini
                   ) else (
                          echo %%i>>smallyun.ini
                          if "%%i"=="[baby]" echo baba>>smallyun.ini
                           )
)
pause>nul

作者: smallyun     时间: 2008-4-22 11:28
非常感谢大家对我的帮忙,我会常来这里学习的。




欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) Powered by Discuz! 2.5