HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2019
1001
ランダムでメモ帳の内容を表示するには2解決


リンク

2019/10/1(Tue) 13:48:49|NO.88550

クイズゲームのようなものをつくっていて、ランダムで「.txt」とついた
ファイルの内容を表示できるようにしたいのですがどうしてもnoteloadのところでファイルが見つからない
とエラーになってしまいます。解決方法を教えてください!

#include "hsp3util.as" sdim list,1000 dirlist list,"*.txt" randomize bangou=rnd(length(list)) notesel buf noteload list(bangou) text 120 pos 100,100 emes buf



この記事に返信する


ソラ

リンク

2019/10/1(Tue) 14:13:59|NO.88551

dirlistはファイルリストを\nで区切った1つの文字列として取得します。
なので使う場合は分割しないといけません。

#include "hsp3util.as" sdim list,1000 dirlist list,"*." ファイル数=stat split list,"\n",list_ randomize bangou=rnd(ファイル数) notesel buf noteload list_(bangou) text 120 pos 100,100 emes buf
こんな感じでいいかと。
ちなみにdirlistで取得された文字列は、一番最後に無駄な改行が入るので、
note系やsplitを使って分割した場合、実際のファイル数+1の配列が作成されます。
なのでsplitの戻り値(stat)で取得される分割数、notemax、lengthを使う場合は注意してください。
dirlistの戻り値で正確なファイル数が取得できるので、それをそのまま使うのが一番確実かと。



リンク

2019/10/1(Tue) 14:23:41|NO.88552

回答ありがとうございます。
dirlistにこんな落とし穴があったんですね、勉強になりました。
これで作業が続けられます(*- -)(*_ _)ペコリ



ONION software Copyright 1997-2023(c) All rights reserved.