指定した場所の読み込み

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
kawa

指定した場所の読み込み

#1 投稿記事 by kawa »

初めての投稿のkawaです。
よろしくお願いします。

現在、"00.txt"というテキストファイルに、それぞれの能力値を書いて、
(例えば、
HP(150)
MP(120)
みたいに)
HPとMPの()の中だけをそれぞれ読み込むというプログラムを作りたいのですが、
どのような関数を使えば良いのかわかりません。
何を使えばいいのでしょうか?
konisi
記事: 893
登録日時: 2005年7月25日(月) 13:27
お住まい: 埼玉県東松山市
連絡する:

#2 投稿記事 by konisi »

Openでファイルを開いた後でInput#でとりあえず文字を読み込んで、
あとは文字列系の関数で150等の数値文字列を切り出して(Mid$等で)
Valで数値に変換するのはどうでしょうか?

#似たような事をもっと楽にIniファイルでも出来るので、そちらも検討してみてください。
Website→http://web1.nazca.co.jp/himajinn13sei/top.html
ここ以外の場所では「暇人13世」というHNを主として使用。

に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
kawa

#3 投稿記事 by kawa »

Mid$を使ったらできました、ありがとうございます。
ところで、ActiveBasicでのiniの扱いはどうするのでしょうか。
konisi
記事: 893
登録日時: 2005年7月25日(月) 13:27
お住まい: 埼玉県東松山市
連絡する:

#4 投稿記事 by konisi »

読み込むだけなら、GetPrivateProfileString関数でいけます。

定義

コード: 全て選択

Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (lpAppName As *Byte,lpKeyName As *Byte,lpDefault As *Byte,lpReturnedString As *Byte,nSize As DWord,lpFileName As *Byte) As DWord
詳しい使い方はWebで調べてみてください。
Website→http://web1.nazca.co.jp/himajinn13sei/top.html
ここ以外の場所では「暇人13世」というHNを主として使用。

に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
kawa

#5 投稿記事 by kawa »

そうなんですか、パラメータが多くて難しそうですが、やってみます。
ところで、何度も申し訳ないのですが、
Mid$関数で改行は何バイトとして数えればいいのでしょうか。
改行のバイト数が分からないので改行無しでやっていたのですが、
やっぱり見づらいので・・・。
それともMid$では改行は読み込めないのでしょうか。
三毛CAT

改行など

#6 投稿記事 by 三毛CAT »

Windowsの場合、改行は2バイトです。
Chr$(13)+Chr$(10)や、半角の¥r¥nで表せます。 iniファイルには、こういうものもあります。
これも参考になると思います。
konisi
記事: 893
登録日時: 2005年7月25日(月) 13:27
お住まい: 埼玉県東松山市
連絡する:

#7 投稿記事 by konisi »

Windowsの場合、改行は2バイトです。
Chr$(13)+Chr$(10)や、半角の¥r¥nで表せます。
Windowsの場合というよりは、文字セットの改行コードがCR+LFの場合にそうなります。

S-JISを読み込むことが前提なら
・文字コードが0か、10か、又は13の時(0は文字列の終端)
・文字コードが128以上の時(2バイト文字か、半角仮名文字)
の2つに注意すれば大抵は問題なく動作すると思います。
Website→http://web1.nazca.co.jp/himajinn13sei/top.html
ここ以外の場所では「暇人13世」というHNを主として使用。

に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
返信する