【发布时间】:2013-05-22 14:45:27
【问题描述】:
为了好玩,我正在批量制作一个记忆游戏,但遇到了一个问题。我有一个球员分数的高分文件,无论我使用什么文件类型,它都可以读取和编辑。
我想知道 .bat 文件是否有可能在其自身中永久存储数据,即使在我关闭程序之后也是如此。所以当再次打开它时,数据仍然存在。这可能吗?
提前谢谢你们。
【问题讨论】:
标签: file batch-file save internal
为了好玩,我正在批量制作一个记忆游戏,但遇到了一个问题。我有一个球员分数的高分文件,无论我使用什么文件类型,它都可以读取和编辑。
我想知道 .bat 文件是否有可能在其自身中永久存储数据,即使在我关闭程序之后也是如此。所以当再次打开它时,数据仍然存在。这可能吗?
提前谢谢你们。
【问题讨论】:
标签: file batch-file save internal
@echo off
for /f "tokens=1 delims=:" %%D in ('findstr /R /N "end_of_batch_label" "%~f0"' ) do set end_batch=%%D
echo -- HERE WE MAKE A NEW SELF CONTAINED RECORD --
echo echo data entry 4^>^>"%~f0"
echo(>>"%~f0"
echo data entry ^4>>"%~f0"
echo -- HERE STARTS PRINTING OF SELF CONTAINED DATA --
type "%~f0" | more +%end_batch%
exit /b 0
:end_of_batch_label
data entry 1
data entry 2
data entry 3
当然可以。试试上面的代码。
【讨论】:
:end_of_batch_label之后开始。使用findstr /R /N "end_of_batch_label" "%~f0"我们可以找到所有包含end_of_batch_label的行并将此命令放入FOR /F我们可以提取这些的最后一行。使用@ 987654326@我们可以在指定的行之后打印文件的内容。希望这会有所帮助...
MORE 命令的参数(在找到end_of_batch_label 并将编号分配给end_batch 的行之后)。例如type some_file|more +5 将在第5 行之后打印some_file 的所有内容。