vb字串和位元組陣列的轉換,VB字串和位元組陣列的轉換

時間 2021-12-22 04:54:41

1樓:

當我們在vb中呼叫win32 api函式時,如果函式的返回值是乙個字串,那一般有如下三種情況:

1. 函式預先要求你提供乙個有固定空間的字串,以供儲存函式的返回值。

2. 函式的返回是乙個以null結尾的c字串,而不是正規的vb字串。

3. win32 api函式有時候會返回另一種型別的字串。這種型別的字串在單個緩衝區內儲存了多個字串值,每個值之間用null隔開,結尾的是兩個null,乙個null是最後乙個字串值的結尾符,另乙個null是整個字串的結尾符。

這其實就是我們通常在c中遇到的字串陣列。

2樓:匿名使用者

dim s as string, a() as byte, s1 as string

s = "123456abcdef"

a = strconv(s, vbfromunicode) '字串轉換為位元組陣列

s1 = strconv(a, vbunicode) '位元組陣列轉換為字串

msgbox s1

vb字串和位元組陣列轉換奇怪的問題

3樓:匿名使用者

在csdn有與lz相同的問貼,已有網友指出下句錯

s = strconv(b, vbtounicode) ' 陣列轉成字串

應該為:

s = strconv(b, vbunicode) ' 陣列轉成字串

參閱nsdn:

strconv 函式

返回按指定型別轉換的 variant (string)。

語法 strconv(string, conversion, lcid)

strconv 函式的語法有下面的命名引數:

部分 說明

string 必要引數。要轉換的字串表示式。

conversion 必要引數。integer。其值的和決定轉換的型別。

lcid 可選的。如果與系統localeid不同,則為localeid(系統localeid為預設值。)

設定值conversion 引數的設定值為:

常數 值 說明

vbuppercase 1 將字串文字轉成大寫。

vblowercase 2 將字串文字轉成小寫。

vbpropercase 3 將字串中每個字的開頭字母轉成大寫。

vbwide* 4* 將字串中單位元組字元轉成雙位元組字元。

vbnarrow* 8* 將字串中雙位元組字元轉成單位元組字元。

vbkatakana** 16** 將字串中平假名字元轉成片假名字元。

vbhiragana** 32** 將字串中片假名字元轉成平假名字元。

vbunicode 64 根據系統的預設碼頁將字串轉成 unicode。

vbfromunicode 128 將字串由 unicode 轉成系統的預設碼頁。

vb字串和位元組陣列怎麼轉換?

4樓:

當我們在vb中呼叫win32 api函式時,如果函式的返回值是乙個字串,那一般有如下三種情況:

1. 函式預先要求你提供乙個有固定空間的字串,以供儲存函式的返回值。

2. 函式的返回是乙個以null結尾的c字串,而不是正規的vb字串。

3. win32 api函式有時候會返回另一種型別的字串。這種型別的字串在單個緩衝區內儲存了多個字串值,每個值之間用null隔開,結尾的是兩個null,乙個null是最後乙個字串值的結尾符,另乙個null是整個字串的結尾符。

這其實就是我們通常在c中遇到的字串陣列。

vb怎麼獲取文字框裡的字串,VB怎麼獲取文字框裡的字串

先定義一個變數,然後將變數設定為文字框的內容即可。如下 以獲取text1控制元件為例 dim str1 as string 定義字元變數private sub text1 change 當text1字元改變時 str1 text1.text 設定為文字框的字串end sub dim a as str...

VB如何將數字字串轉換成數字用以計算

用val就可以了,比如a是字元型的變數 a 1500 b val a 這時候b就是1500 數值 了。 十六進位制自己搞個函式弄吧,a f 對應 10 15 然後按權位 加起來就10進位制了 hf0 十六進位制沒h。 蔡瑀 public function cdm byval val val repl...

vb如何擷取以空格分隔的部分字串,如「同意李紅9 23我只要「李紅」,最好從右取

直接用split函式將字串打散放到可調陣列裡,取需要的元素即可。如 dim a as string a split 同意 李紅 2011 9 23 9 23 注意使用英文小寫的雙引號,不是中文的,否則出錯 a 1 即是 李紅 dim a as string a split 同意 李紅 2011 9 ...