【お題】引っかけ問題(締め切り10月27日(日)23時)

VBで、WindowsAPI関数のGetComputerNameを使って、コンピュータ名を取得する
処理で、コンピュータ名の定義が、50バイト固定のString型になっています。
コンピュータ名は問題なく取れるのですが、50バイト固定のため、後半にnull
文字列が入ってしまい、除去する方法がわかりません。
(replace命令等チャレンジしましたが、だめでした)
どなたか、nill値の除去方法をお教え下さい。宜しくお願い致します。

A 回答 (4件)

データ型の宣言で固定長だからじゃないですか?


Dim ComputerName As String * 50 'API用バッファ
Dim strName As String '文字バッファ

strName = Left(ComputerName, InStr(ComputerName, vbNullChar) - 1)
←maruru01さんの方法

以上
    • good
    • 0

再びmaruru01です。


No.2のElvinさん、TrimではNullは削除出来ません。
横から口を出して申し訳ありませんが、質問者の方が勘違いされるといけないので。
不快に思ったらすみません。
では。
    • good
    • 1

文字列からスペースを削除する Trim ではどうでしょうか?



Trim(文字列)
    • good
    • 0

こんにちはmaruru01です。


次のようにします。

NoNullName = Left(ComputerName, InStr(ComputerName, vbNullChar) - 1)

では。
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報