ファイル拡張子を追加 (file.path.add_extension)
宣言
新しいパス, エラー情報 = file.path.add_extension(パス, 拡張子)
パラメータ
- パス
文字列型。基準となるパス文字列 - 拡張子
文字列型。追加するファイル拡張子。通常、先頭の.は含めません
戻り値
- 新しいパス
文字列型または nil。成功時は拡張子を追加したパス文字列を返し、追加できない場合は nil を返します - エラー情報
文字列型。パス文字列が無効な場合は"Invalid path"、拡張子文字列が無効な場合は"Invalid extension"を返します。拡張子に/が含まれるなどの理由で追加できない場合、エラー情報なしで nil のみを返すことがあります
説明
パスの末尾に
.と指定した拡張子を追加します。元のパスに拡張子がある場合は、その後ろに新しい拡張子を追加します。例えばfile.txtにbakを追加するとfile.txt.bakになります
渡す拡張子に先頭の.を含めることはできますが、この関数はそれを削除しません。.txtを渡すと..txtが追加されます
この関数はパス文字列のみを生成し、実際のファイルやディレクトリの名前は変更しません
この関数は 20250914 以降のバージョンでのみ使用できます
例
local new_path = file.path.add_extension("/path/to/file", "txt") -- 返り値 "/path/to/file.txt"
local archive_path = file.path.add_extension("/path/to/file.tar", "gz") -- 返り値 "/path/to/file.tar.gz"
local backup_path = file.path.add_extension("/path/to/file.txt", "bak") -- 返り値 "/path/to/file.txt.bak"
local dotted_path = file.path.add_extension("/path/to/file", ".txt") -- 返り値 "/path/to/file..txt"