https://dev.activebasic.com/dev_wiki/api.php?action=feedcontributions&user=124.102.107.173&feedformat=atom
AB開発Wiki - 利用者の投稿記録 [ja]
2024-03-28T19:49:36Z
利用者の投稿記録
MediaWiki 1.35.3
https://dev.activebasic.com/dev_wiki/index.php?title=String%E3%82%AF%E3%83%A9%E3%82%B9&diff=12921
Stringクラス
2009-11-09T09:24:05Z
<p>124.102.107.173: </p>
<hr />
<div>文字列を扱うクラスです。<br />
<br />
== クラスの機能 ==<br />
<br />
===公開メソッド===<br />
<br />
====コンストラクタ====<br />
Stringインスタンスを初期化します。<br />
Sub String()<br />
(デフォルトコンストラクタ)空文字列を作ります。<br />
Sub String(initStr As PCWSTR, length As Long)<br />
Sub String(initStr As PCSTR, length As Long)<br />
initStrで示される内容で文字列を作ります。長さはlengthで指定します。<br />
Sub String(initStr As PCWSTR)<br />
Sub String(initStr As PCSTR)<br />
initStrで示される内容で文字列を作ります。ヌル文字で終端しているとして扱われます。<br />
Sub String(initStr As String)<br />
initStrの複製を作ります。<br />
Sub String(initChar As StrChar, length As Long)<br />
initCharがlengthの数だけ並んだ文字列を作成します。<br />
<br />
==== デストラクタ ====<br />
Stringインスタンスの破壊時に呼ばれます。<br />
Sub ~String()<br />
<br />
==== StrPtr ====<br />
文字列へのポインタを返します。<br />
Function StrPtr() As *StrChar<br />
Charsを返します。<br />
<br />
==== *StrChar変換演算子 ====<br />
文字列へのポインタを得ます。<br />
Function Operator () As *StrChar<br />
StrPtr()呼び出しと等価です。<br />
<br />
==== Insert ====<br />
文字列を挿入します。<br />
Const Function Insert(startIndex As Long, str As String) As String<br />
startIndex文字目の後にlpszTextの内容を挿入した文字列を生成して返します。<br />
<br />
==== Remove ====<br />
文字列を削除します。<br />
Const Function Remove(startIndex As Long) As String<br />
Const Function Remove(startIndex As Long, count As Long) As LString<br />
*1番目の形式では、startIndexで指定した位置から文字列末尾までを削除した文字列を生成して返します。<br />
*2番目の形式では、startIndexで指定した位置からcountで指定した数の文字列を削除した文字列を生成して返します。<br />
<br />
==== Replace ====<br />
文字列の置換を行います。<br />
Const Function Replace(oldChar As StrChar, newChar As StrChar) As String<br />
Const Function Replace(oldStr As String, newStr As String) As String<br />
*1番目の形式では、このStringインスタンス内の文字oldCharをnewCharに置き換えた文字列を生成して返します。<br />
*2番目の形式では、このStringインスタンス内の文字列oldStrをnewStrに置き換えた文字列を生成して返します。<br />
<br />
===== 使用例 =====<br />
Dim s = "でてこいでてこいいいけのこい"<br />
Print s.Replace("こい", "いけ")<br />
出力<br />
でていけでていけいけのいけ<br />
<br />
==== 加算演算子・連結演算子 ====<br />
文字列を連結します。<br />
Const Function Operator + (str As PCSTR) As String<br />
Const Function Operator + (str As PCWSTR) As String<br />
Const Function Operator + (str As String) As String<br />
Const Function Operator & (text As PCSTR) As String<br />
Const Function Operator & (text As PCWSTR) As String<br />
Const Function Operator & (objString As String) As String<br />
このStringインスタンスとstrを連結した新しい文字列を返します。<br />
*1, 4番目の形式では、Concat(str, lstrlenA(str))と同じです<br />
*2, 5番目の形式では、Concat(str, lstrlenW(str))と同じです<br />
*3, 6番目の形式では、Concat(str, str.Length)と同じです。<br />
<br />
==== 添え字演算子 ====<br />
要素を読み取ります。<br />
Const Function Operator[] (n As Long) As StrChar<br />
n文字目の文字を返します。範囲外の場合動作は保障されません。<br />
<br />
==== Contains ====<br />
指定した文字列を検索します。<br />
Const Function Contains(text As String) As Boolean<br />
;text<br />
:検索する文字列を指定します。<br />
;戻り値<br />
:CharsからlpszTextの文字列が見つかった場合、Trueを返します。見つからなかった場合、Falseを返します。また、textが空の文字列だった場合、常にTrueが返ります。<br />
<br />
==== IndexOf ====<br />
指定した文字列が最初に見つかった位置を返します。検索は、指定した位置から指定した文字数までとなります。<br />
Const Function IndexOf(text As String) As Long<br />
Const Function IndexOf(text As String, startIndex As Long) As Long<br />
Const Function IndexOf(text As String, startIndex As Long, count As Long) As Long<br />
;text<br />
:検索する文字列を指定します。<br />
;startIndex<br />
:検索を開始する位置を指定します。省略した場合、文字列の先頭から検索されます。<br />
;count<br />
:どこまでを検索するか、開始位置からの文字数で指定します。省略した場合、文字列の末尾まで検索されます。<br />
;戻り値<br />
:検索した文字列が見つかった場合、その位置が返ります。見つからなかった場合-1が返ります。また、lpszTextに空の文字を指定した場合、startIndexが返ります。<br />
文字列の位置は0から始まります。<br />
<br />
==== LastIndexOf ====<br />
指定した文字列が最後に見つかった位置を返します。検索は、指定した位置から指定した文字数までとなります。<br />
Const Function LastIndexOf(text As String) As Long<br />
Const Function LastIndexOf(text As String, startIndex As Long) As Long<br />
Const Function LastIndexOf(text As String, startIndex As Long, count As Long) As Long<br />
;text<br />
:検索する文字列を指定します。<br />
;startIndex<br />
:検索を開始する位置を指定します。省略した場合、文字列の末尾から検索されます。<br />
;count<br />
:どこまでを検索するか、開始位置からの文字数で指定します。省略した場合、文字列の先頭まで検索されます。<br />
;戻り値<br />
:検索した文字列が見つかった場合、その位置が返ります。見つからなかった場合-1が返ります。また、lpszTextに空の文字を指定した場合、startIndexが返ります。<br />
文字列の位置は0から始まります。また、検索は開始位置から文字列の先頭に向かいます。<br />
<br />
<br />
==== StartsWith ====<br />
先頭の文字列が、指定した文字列と一致しているか調べます。<br />
Function StartsWith(text As String) As Boolean<br />
;text<br />
:一致するか調べる文字列を指定します。<br />
;戻り値<br />
:Charsの先頭がtextと一致している場合、Trueが返ります。一致していない場合、Falseが返ります。textに空の文字列を指定した場合、常にTrueが返ります。<br />
<br />
==== EndsWith ====<br />
末尾の文字列が、指定した文字列と一致しているか調べます<br />
Const unction EndsWith(text As String) As Boolean<br />
;text<br />
:一致するか調べる文字列を指定します。<br />
;戻り値<br />
:Charsの末尾がtextと一致している場合、Trueが返ります。一致していない場合、Falseが返ります。textに空の文字列を指定した場合、常にTrueが返ります。<br />
<br />
==== Substring ====<br />
指定した範囲の文字列を取得します。<br />
Const Function Substring(startIndex As Long) As String<br />
Const Function Substring(startIndex As Long, length As Long) As String<br />
;startIndex<br />
:開始位置を指定します。<br />
;length<br />
:取得する範囲を、文字列の長さでしていします。省略した場合、文字列の最後までになります。<br />
;戻り値<br />
:指定した範囲の文字列が、Stringオブジェクトで返ります。<br />
文字列の位置は0から始まります。<br />
<br />
====ToLower====<br />
文字列を全て小文字に変換します。<br />
Const Function ToLower() As String<br />
;戻り値<br />
:Charsの文字列の全て小文字に変換した文字列。<br />
現在のところ変換の対象になるのはアルファベットのみです。<br />
<br />
====ToUpper====<br />
文字列を全て大文字に変換します。<br />
Const Function ToUpper() As String<br />
;戻り値<br />
:Charsの文字列の全て大文字に変換した文字列。<br />
現在のところ変換の対象になるのはアルファベットのみです。<br />
<br />
====GetHashCode====<br />
[[Objectクラス]]からのオーバーライドでハッシュ値を返します。<br />
Override Function GetHashCode() As Long<br />
;戻り値<br />
:ハッシュ値を返します。<br />
例え同一文字列でも、将来に渡ってこの値が同じである保障はありません。<br />
<br />
====ToString====<br />
[[Objectクラス]]からのオーバーライドです。<br />
Override Function ToString() As String<br />
;戻り値<br />
:Thisを返します。<br />
<br />
===公開静的メソッド===<br />
<br />
====IsNullOrEmpty====<br />
文字列が空またはNULLかを調べます。<br />
Static Function IsNullOrEmpty(s As String) As Boolean<br />
;戻り値<br />
:sがNothingであるかs.Lengthが0ならばTrueが返ります。それ以外はFalseです。<br />
<br />
====Compare====<br />
文字列を比較します。<br />
Static Function Concat(x As String, y As String) As Long<br />
;x<br />
:左辺<br />
;y<br />
:右辺<br />
;戻り値<br />
:x < yなら負の値。x = yなら0。x > yなら正の値。<br />
x < y, x = y, x > yのとき、それぞれString.Compare(x, y) < 0, String.Compare(x, y) = 0, String.Compare(x, y) > 0と書き表せます。なお、比較演算子の利用も考えてください。<br />
<br />
====Concat====<br />
文字列を連結して新しい文字列を作ります。<br />
Staic Function Concat(x As Object) As String<br />
Staic Function Concat(x As String, y As String) As String<br />
Staic Function Concat(x As Object, y As Object) As String<br />
Staic Function Concat(x As String, y As String, z As String) As String<br />
Staic Function Concat(x As Object, y As Object, z As Object) As String<br />
Staic Function Concat(x As String, y As String, z As String, w As String) As String<br />
Staic Function Concat(x As Object, y As Object, z As Object, w As Object) As String<br />
;x<br />
:1つ目の文字列<br />
;y<br />
:2つ目の文字列<br />
;z<br />
:3つ目の文字列<br />
;w<br />
:4つ目の文字列<br />
;戻り値<br />
:連結した文字列を返します。<br />
Objectを引数に取るものは、ToStringして得た文字列を連結の対象とします。<br />
<br />
===公開プロパティ===<br />
====Length====<br />
Function Length() As Long<br />
Stringが保持している文字列の長さを表しています。基本的に書き換えないでください。<br />
<br />
== 備考 ==<br />
文字列の末尾には、従来のABの文字列やC/C++などと同様、常にヌル文字 (\0)が付きます。Length > 0のとき、StrPtr[Length]は0です。StrPtrを行って得たポインタからこの要素を読み取ることは可能です。なお、文字列中にヌル文字が含まれても構いません。<br />
<br />
=== StrChar型 ===<br />
StringはStrChar型の配列として文字を保持します。StrChar型は場合によってマルチバイト文字 (日本語環境のWindowsではShift_JIS)かワイド文字 (UTF-16LE)のどちらかに切り替わります。<br />
; UNICODEが定義されている(プロジェクトオプションで指定されている)場合<br />
: 常にワイド文字になります。<br />
; UNICODEが定義されておらず、__STRING_IS_NOT_ALWAYS_UNICODEも定義されていない場合<br />
: ワイド文字になります。このとき__STRING_UNICODE_WINDOWS_ANSIが定義されます。<br />
; UNICODEが定義されておらず__STRING_IS_NOT_ALWAYS_UNICODEが定義されている場合<br />
: マルチバイト文字になります。このとき__STRING_IS_NOT_UNICODEが定義されます。<br />
__STRING_UNICODE_WINDOWS_ANSIが定義されている状態では、Char/TCHARとStrCharは異なる大きさになることに注意してください。<br />
<br />
[[Category:System名前空間]]</div>
124.102.107.173
https://dev.activebasic.com/dev_wiki/index.php?title=Path%E3%82%AF%E3%83%A9%E3%82%B9&diff=12920
Pathクラス
2009-11-09T09:21:45Z
<p>124.102.107.173: </p>
<hr />
<div>'''Pathクラス'''は、ファイルパスを格納した[[Stringクラス|String]]インスタンスに対して、さまざまなメソッドを提供します。<br />
== クラスの機能 ==<br />
=== 定数 ===<br />
==== AltDirectorySeparatorChar ====<br />
Static AltDirectorySeparatorChar As Char<br />
ディレクトリを区切る代替文字を表します。デフォルトで、Asc("/")が指定されています。<br />
<br />
==== DirectorySeparatorChar ====<br />
Static DirectorySeparatorChar As Char<br />
ディレクトリを区切る文字を表します。デフォルトで、Asc("\")が指定されています。<br />
<br />
==== PathSeparator ====<br />
Static PathSeparator As Char<br />
特に環境変数でパスを区切る文字を表します。デフォルトで、Asc(";")が指定されています。<br />
<br />
==== VolumeSeparatorChar ====<br />
Static VolumeSeparatorChar As Char<br />
ボリュームを区切る文字を表します。デフォルトで、Asc(":")が指定されています。<br />
<br />
=== メソッド ===<br />
==== GetFileName ====<br />
指定したパスの、ファイル名の部分だけを取得します。<br />
Static Function GetFileName(path As String) As String<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathのファイル名の部分を、[[Stringクラス|String]]インスタンスで返します。<br />
<br />
==== GetFileNameWithoutExtension ====<br />
指定したパスの、拡張子を除いたファイル名の部分だけを取得します。<br />
Static Function GetFileNameWithoutExtension(path As String) As String<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathの拡張子を除いたファイル名の部分を、[[Stringクラス|String]]インスタンスで返します。<br />
<br />
==== GetRandomFileName ====<br />
ランダムなファイル名を取得します。<br />
Static Function GetRandomFileName() As String<br />
;戻り値<br />
:ランダムなファイル名を、[[Stringクラス|String]]インスタンスで返します。<br />
まだ厳密に実装されていません。<br />
<br />
==== GetExtension ====<br />
指定したパスの、拡張子の部分だけを取得します。<br />
Static Function GetExtension(path As String) As String<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathの拡張子の部分を、[[Stringクラス|String]]インスタンスで返します。<br />
先頭の"."を含む文字列が返ります。<br />
<br />
==== ChangeExtension ====<br />
指定したパスの、拡張子を変更します。<br />
Static Function ChangeExtension(path As String, extension As String) As String<br />
;path<br />
:パスを指定します。<br />
;extension<br />
:先頭の"."を含む、新しい拡張子を指定します。<br />
;戻り値<br />
:pathの拡張子部分を、extensionで指定した拡張子に変更し、[[Stringクラス|String]]インスタンスで返します。<br />
<br />
==== HasExtension ====<br />
指定したパスの拡張子があるかどうかを返します。<br />
Static Function HasExtension(ByRef path As String) As Boolean<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:拡張子がある場合はTrue、それ以外はFalseを返します。<br />
<br />
==== GetTempFileName ====<br />
一時ファイルを作成し、そのパスを返します。<br />
Static Function GetTempFileName() As String<br />
;戻り値<br />
:作成した一時ファイルのパスを、[[Stringクラス|String]]インスタンスで返します。<br />
未実装です。<br />
<br />
==== GetTempPath ====<br />
システムの一時フォルダのパスを取得します。<br />
Static Function GetTempPath() As String<br />
;戻り値<br />
:一時フォルダのパスを、[[Stringクラス|String]]インスタンスで返します。<br />
<br />
==== GetFullPath ====<br />
指定したパスを、絶対パスにして返します。<br />
Static Function GetFullPath(path As String) As String<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathを絶対パスにした、[[Stringクラス|String]]インスタンスを返します。<br />
絶対パスは、GetCurrentDirectory()から得られた情報を元に作成されます。また、すでにpathが絶対パスであった場合、戻り値はpathとなります。<br />
<br />
==== GetDirectoryName ====<br />
指定したパスの、ひとつ上のディレクトリ(パスが示すファイル,ディレクトリが入っているフォルダ)のパスを取得します。<br />
Static Function GetDirectoryName(path As String) As String<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathのひとつ上のフォルダのパスが、[[Stringクラス|String]]インスタンスで返ります。pathがルートディレクトリを示している場合、戻り値は[[Stringクラス#Empty|String.Empty]]となります。<br />
<br />
==== GetPathRoot ====<br />
指定したパスの、ルートディレクトリを取得します。<br />
Static Function GetPathRoot(path As String) As String<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathのルートディレクトリが、[[Stringクラス|String]]インスタンスで返ります。pathにルートディレクトリが含まれなかった場合、空の文字列が返ります。<br />
<br />
==== IsPathRooted ====<br />
指定したパスに、ルートディレクトリが含まれるかどうかを返します。<br />
Static Function IsPathRooted(path As String) As Boolean<br />
;path<br />
:パスを指定します。<br />
;戻り値<br />
:pathにルートディレクトリが含まれているならTrue、それ以外はFalseです。<br />
<br />
==== Combine ====<br />
指定した2つのパスを連結させます。<br />
Static Function Combine(path1 As String, path2 As String) As String<br />
;path1<br />
:先頭のパスを指定します。<br />
;path2<br />
:path1に続く、パスを指定します。<br />
;戻り値<br />
:path1にpath2を連結させた、[[Stringクラス|String]]インスタンスが返ります。path1の最後が、パス区切り文字"\"で終わっていなかった場合、path1とpath2の間に、"\"を追加します。<br />
<br />
== 備考 ==<br />
Pathクラスは、Windowsファイルパスを想定して作られています。Pathクラスのメソッドを実行する際、パスが正しい値かチェックされ、無効な文字が含まれている場合、[[IOExceptionクラス|IOException]]が発生します。<br />
<br />
[[Category:System.IO名前空間]]</div>
124.102.107.173