烏賊先生のプログラミング道場

プチコン3号


参考資料

§ ファイル操作1・文字列 §

コンピュータ(ニンテンドー3DSは、身体は小さいが、立派なコンピュータです)を扱う上で、無くては成らない機能がファイル操作です。ゲームでも、或る時の状態を保存するセーブ機能や、ハイスコアの保存等で、必須の技術と成ります。今回は、文字列の保存・読込です。

下記のプログラムでは、文字列の保存(セーブ)と読込(ロード)を行います。 ボタンで保存文字列入力、 ボタンでファイル名入力、 ボタンで保存、 ボタンで読込を行います。終了するには、キーボード画面の STOP をタップして下さい。猶、ガイドを日本語表示にし、入力域をWindowsのテキストボックス風にしてみました。

0000001OPTION STRICT
0000002ACLS
0000003DIM  I,B,S$,F$,T1$,T2$,T3$,T4$,T5$,T6$
0000004
0000005GFILL  0,0,399,239,RGB(239,235,222)
0000006COLOR  #TWHITE
0000007
0000008FOR  I=0  TO  5
0000009  READ  S$
0000010  T1$=T1$+CHR$(VAL("&H"+S$))
0000011NEXT
0000012GPUTCHR  16,16,T1$,1,1,#BLACK
0000013GBOX  60,12,380,28,RGB(123,158,189)
0000014GPAINT  61,13,#BLACK
0000015
0000016FOR  I=0  TO  5
0000017  READ  S$
0000018  T2$=T2$+CHR$(VAL("&H"+S$))
0000019NEXT
0000020GPUTCHR  16,40,T2$,1,1,#BLACK
0000021GBOX  60,36,380,52,RGB(123,158,189)
0000022GPAINT  61,37,#BLACK
0000023
0000024FOR  I=0  TO  2
0000025  READ  S$
0000026  T3$=T3$+CHR$(VAL("&H"+S$))
0000027NEXT
0000028FOR  I=0  TO  2
0000029  READ  S$
0000030  T4$=T4$+CHR$(VAL("&H"+S$))
0000031NEXT
0000032FOR  I=0  TO  2
0000033  READ  S$
0000034  T5$=T5$+CHR$(VAL("&H"+S$))
0000035NEXT
0000036FOR  I=0  TO  2
0000037  READ  S$
0000038  T6$=T6$+CHR$(VAL("&H"+S$))
0000039NEXT
0000040S$="X "+T1$+T3$+" Y "+T2$+T3$+"  "
0000041S$=S$+"A "+T4$+" B "+T5$+"  "
0000042S$=S$+"LR "+T6$
0000043GPUTCHR  55,224,S$,1,1,#BLACK
0000044
0000045WHILE  TRUE
0000046  B=BUTTON(0)
0000047  
0000048  'QUIT
0000049  IF  B  AND  &H300  THEN  BREAK
0000050  
0000051  'STRING
0000052  IF  B  AND  64  THEN
0000053    LOCATE  8,2 : PRINT  "                              "
0000054    LOCATE  8,2 : LINPUT  S$
0000055  ENDIF
0000056  
0000057  'FILENAME
0000058  IF  B  AND  128  THEN
0000059    LOCATE  8,5 : PRINT  "                              "
0000060    LOCATE  8,5 : LINPUT  F$
0000061  ENDIF
0000062  
0000063  'SAVE
0000064  IF  B  AND  16  THEN
0000065    IF  F$!=""  THEN
0000066      SAVE  "TXT:"+F$,S$
0000067    ENDIF
0000068  ENDIF
0000069  
0000070  'LOAD
0000071  IF  B  AND  32  THEN
0000072    IF  F$!=""  THEN
0000073      S$=LOAD("TXT:"+F$)
0000074    ENDIF
0000075  ENDIF
0000076WEND
0000077ACLS : END
0000078
0000079DATA  "4FDD","5B58","6587","5B57","5217"
0000080DATA  "30D5","30A1","30A4","30EB","540D"
0000081DATA  "5165","529B"
0000082DATA  "4FDD","5B58"
0000083DATA  "8AAD","8FBC"
0000084DATA  "7D42","4E86"



ゲームプログラミング道場 ニンテンドー3DS Smile BASIC  Visual Basic,Visual C#

Copyright © King of Squid, All rights reserved.