console_readLine

標準入力から一行分の文字列を読み取ります。


taiseiue | 2024-06-12

定義

名前空間: Alice.Console
アセンブリ: Losetta.Runtime.dll
ソースコード: Alice.Console.cs

console_readLine()

標準入力から一行分の文字列を読み取ります。

AliceScript
namespace Alice.Console;

@unSupportedPlatform("browser")
@unSupportedPlatform("android")
public string? console_readLine();
戻り値
string? 標準入力から読み取った一行分の文字列。ただし、次の行がない場合はnull

対応
AliceScript GM、2.0、2.1、2.2、2.3、3.0、4
AliceSister GM、2.0、2.1、2.2、2.3、3.0、4
Losetta 0.8、0.9、0.10、0.11

説明

この関数は、標準入力から一行分文字列を読み取ります。 行とは、任意個の任意の文字の後にキャリッジリターンU+000d、改行U+000aまたは、env_newlineの値で終わる文字列です。この関数が返す文字列には、行の終端文字は含まれません。 この関数は、最大で256文字読み取ることができます。しかし、終端文字は含まれないため、実質254文字を読み取れます。

この関数は、同期的に実行されます。 処理は行が読み取られるか、Ctrl+Z キー(Windowsでは何も入力せず Enter キー)が押下されるまで一時停止します。Ctrl+Z キーが押された場合、この関数はnullを返します。

標準入力がファイルにリダイレクトされた場合、この関数はリダイレクトされたファイルから一行分文字列を読み取ります。たとえば、test.txtというファイルが以下の内容であったとします。

test.txt
This is test.

このファイルに対して、次のようにコマンドを実行すると、例のような結果になります。

コンソール
> alice -e print(read()) < test.txt
This is test.

この関数の動作は、console_readLine関数と同じです。

次の例では、コンソールから一行分文字列を読み取り、そのまま出力します。

AliceScript
using Alice.Console;

string input = console_readLine();

print(input);