【问题标题】:Saving Values in a .txt document using QB64使用 QB64 将值保存在 .txt 文档中
【发布时间】:2019-01-17 19:33:24
【问题描述】:

在我使用 QB64 的基于文本的冒险游戏中,试图保存他们输入的玩家姓名、他们输入的年龄和他们选择的性别。没有出现错误,但是当我检查文本文档时,它输入的只是 0。 我在他们输入信息后调用 sub,所以变量已经设置好了。

SUB saving


save1.txt$ = "save1.txt"
OPEN save1.txt$ FOR APPEND ACCESS WRITE AS #1 LEN = 40
PRINT #1, name$
PRINT #1, age%
PRINT #1, gender$


CLOSE #1

end sub

【问题讨论】:

  • 让我们看看你如何/在哪里调用子程序saving。我看到这个子程序没有参数。您是否分享了变量:name$age%gender$
  • 我建议你用PRINT #1, str$(age%)保存age%。我认为最好在文件的值之间使用分隔符并将所有记录数据写入同一行。现在,您的代码使用三行来编写应该是记录的内容。恕我直言,最好使用“,”或“; ' 来分隔每条记录的字段。然后你可以写PRINT #1, name$; ";"; str$(age%);";";gender$
  • 谢谢,但我能够保存`SUB保存`打开“save1.txt”输出为#1``打印姓名$``打印年龄%``打印性别$ ` ` PRINT #1,姓名$` ` PRINT #1,年龄%` ` PRINT #1,性别$` CLOSE #1 END SUB @SirJoBlack

标签: save qb64


【解决方案1】:

您需要将要写入文件的变量传递给 Saving 子例程:

PRINT "Enter name";: INPUT name$
PRINT "Enter age";: INPUT age%
PRINT "Enter gender";: INPUT gender$
CALL Saving(name$, age%, gender$)
END
SUB Saving (name$, age%, gender$)
    Save1.Txt$ = "save1.txt"
    OPEN Save1.Txt$ FOR APPEND AS #1
    PRINT #1, name$
    PRINT #1, age%
    PRINT #1, gender$
    CLOSE #1
END SUB

或者您可以将变量声明为共享:

DIM SHARED username AS STRING
DIM SHARED age AS INTEGER
DIM SHARED gender AS STRING
PRINT "Enter name";: INPUT username
PRINT "Enter age";: INPUT age
PRINT "Enter gender";: INPUT gender
CALL Saving
END
SUB Saving
    Save1.Txt$ = "save1.txt"
    OPEN Save1.Txt$ FOR APPEND AS #1
    PRINT #1, username
    PRINT #1, age
    PRINT #1, gender
    CLOSE #1
END SUB

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多