C#_输⼊与输出语句
1. C#中不提供输⼊和输出语句,其输⼊和输出操作是借助于 ⼀些预定义类来实现的。
2. Console 类提供⽤于从控制台读取单个字符或整⾏的⽅法, 并且该类还可将值类型的数据、字符数组以及对象集⾃动转换
3. 使⽤Console类需要在源程序开头使⽤using指令进⾏命名空 间system引⼊,格式如下:
4. using system;
5. 如果没有引⼊该命名空间,则需要在程序设计时使⽤ Console类的完全限定名,应把Console替换为System.Console
6.
7. Console类⽀持⽤户使⽤标准输⼊设备如键盘和⿏标向计算 机输⼊数据,其实现的输⼊⽅法有Read、ReadLine、ReadKey
等
8. Read⽅法
9. Read⽅法从标准输⼊流读取下⼀个字符。其返回值是输⼊ 流中下⼀个字符的Unicode编码值,返回值类型是 System.Int32,;如果
当前没有更多的字符可供读取,则返回
⽅法定义为:
public static int Read();
1. 在键⼊输⼊字符时,Read⽅法会阻⽌其返回,只有当⽤户 按Enter 键时该⽅法才会终⽌。
2. 按Enter键会在输⼊内容后⾯追加⼀个与平台有关的⾏终⽌ 序列。
3. 对Read ⽅法的后续调⽤⼀次检索输⼊中的⼀个字符,检索 完后⼀个字符后,Read 会再次阻⽌其返回,并重复上述循 环。
Read⽅法只有在下列情况下才返回-1:
4. 同时按键Control 和键Z (Ctrl+Z),此按键组合发出到达⽂ 件尾条件;
5. 按发出到达⽂件尾条件的等效键,例如Windows中的F6功能 键;
6. 将输⼊流重定向到具有实际的⽂件尾字符的源,例如⽂本⽂ 件。
7. Read⽅法的⽤法⽰例如下:
1.char ch;
2.int x;
3. x = Console.Read();//读取字符,返回字符的Unicode编码值给变量x
4. ch = Convert.ToChar(x);//将Unicode编码转换成对应字符给变量ch
5. Console.WriteLine("Thechar is:{0}",ch);
ReadLine⽅法
ReadLine⽅法从标准输⼊流读取下⼀⾏字符,其返回值类型 为System.String;如果没有更多的可⽤⾏,则返回null。其⽅
法定义为:
public static string ReadLine();
1. ⾏被定义为后跟回车符(⼗六进制0x000d)、换⾏符(⼗ 六进制0x000a)或Environment.NewLine属性值的字符序列。
2. ReadLine⽅法返回的字符串不包含终⽌字符。
3. 如果在该⽅法从控制台读取输⼊时按Ctrl + Z字符,该⽅法 将返回null。
下⾯是ReadLine⽅法的使⽤⽰例。
1.string line; line = Console.ReadLine();//从标准输⼊流读取下⼀⾏字符
2. ReadKey⽅法获取⽤户按下的下⼀个字符或功能键。返回值 类型为:System.ConsoleKeyInfo,描述ConsoleKey 常数和 对应于按下的控制台键的Unicode字符(如果存在这样的字 符)。
3. ConsoleKeyInfo 对象还以ConsoleModifiers 值的按位组合描述是否在按下该控制台键的同时按下了Shift、Alt 或Ctrl键 中的⼀个或多个。
ReadKey⽅法有如下两种重载⽅式:
1.public static ConsoleKeyInfo ReadKey();//⽅式1
2.public static ConsoleKeyInfo ReadKey(bool intercept);//⽅式2
3. ⽅式1中,ReadKey⽅法获取⽤户按下的键后显⽰在控制台 窗⼝中。
1. ConsoleKeyInfo cki; cki = Console.ReadKey();//从键盘读取⽤户按下的下⼀个字符或功能键
Console.Write(" -- You pressed ");
/*根据ConsoleModifiers值的按位组合描述是否在按下该控制台键的同时按下了 Shift、Alt 或 Ctrl 修改键中的⼀个或多个*/
if((cki.Modifiers & ConsoleModifiers.Alt)!=0)
Console.Write("ALT+");
if((cki.Modifiers & ConsoleModifiers.Shift)!=0)
Console.Write("SHIFT+");
if((cki.Modifiers & ConsoleModifiers.Control)!=0)
Console.Write("CTL+");
Console.WriteLine(cki.Key.ToString());//输出按下的字符
2. ⽅式2中,ReadKey⽅法获取⽤户按下的键后可以选择显⽰ 在控制台窗⼝中。
3. 参数intercept值为true时,按下的键将被截获,不会显⽰在 控制台窗⼝中;参数值为false时,将在控制台窗⼝中显⽰按下
的键。
4. Console类⽀持计算机向标准输出设备如显⽰器输出数据, 其实现的输⼊⽅法有Write、WriteLine。
Write⽅法
1. Console类的Write⽅法有18种重载定义,分别⽤以实现将布 尔型、数值型、字符型、字符串型、对象型等信息写⼊标准输 出流中。
⽅式1: Write(输出项);//将指定的输出项信息写⼊标准输出流。
⽅式2: Write(格式控制,输出项列表);//将各输出项按指定的格式写⼊标准输出流。
Write⽅法的使⽤⽰例如下:
char c ='c';
int d =10;
Console.Write(true);//使⽤重载⽅式1输出bool型值
Console.Write(c);//使⽤重载⽅式2输出字符
Console.Write(d);//使⽤重载⽅式6输出int型值
Console.Write("Hello world!");//输出重载⽅式10输出字符串
Console.Write(“{0:x}”,d);//将d值按照⼗六进制形式输出,输出:a
WriteLine⽅法
Console类的WriteLine⽅法⽤以将布尔型、数值型、字符型、 字符串型、对象型等信息写⼊标准输出流中,它与Write⽅法 的不同就是在输出信息后附加当前⾏终⽌符,即输出当前信息 后⾃动换⾏。
writeline输出数值变量Write⽅法的每种重载都对应有WriteLine⽅法的重载定义。
WriteLine⽅法还可⽤以只把当前⾏终⽌符写⼊标准输出 流,即输出⼀个空⾏。
WriteLine⽅法的调⽤形式如下:
⽅式1: WriteLine(输出项);//将指定输出项信息附加当前⾏终⽌符写⼊标准输出流。
⽅式2: WriteLine(格式控制,输出项列表);//将各输出项按指定的格式写⼊标准输出流并附加当前⾏终⽌符。
⽅式3:WriteLine();//输出空⾏
WriteLine⽅法的使⽤⽰例。
int d =10;
Console.WriteLine(true);//输出bool型值后回车
Console.WriteLine(c);//输出字符后回车换⾏
Console.WriteLine(d);//输出int型值后回车换⾏
Console.WriteLine("Hello world!");//输出字符串后回车换⾏Console.WriteLine("{0:x}",d);//将d值按⼗六进制输出后回车换⾏Console.WriteLine();//输出⼀个空⾏
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论