黑马程序员——C#学习日记之控制台输出
2013-04-30 11:21
267 查看
-------
Windows Phone 7手机开发、.Net培训、期待与您交流! -------
C#控制台输出有两种方法:Write()和WriteLine(),它们都是命名空间System中Console类的方法,且都具有多达18种或以上的重载形式,能够直接输出C#提供的所有基本数据类型。其中,Write()方法输出一个或多个值后不换行,即其后没有新行符;而WriteLine()同样是输出一个或多个值,但输出完后换行,即其后有一个新行符。
为了控制输出内容或文本的输出格式,这两种方法提供了较丰富的格式控制方法。
1.基本的数据输出形式
基本数据类型的简单输出形式为:
Console.Write("格式串",参数表);
Console.WriteLine("格式串",参数表);
using System;
class Class1
{
static void Main(string[] args)
{
short shValue= 23;
int iValue= 7;
float fValue = 25.67f;
double dValue=11.23;
char cValue='f';
Console.Write("shValue={0} ",shValue);
Console.WriteLine(); //没有参数,则只输出一个换行符,即光标移到下已行进行输出
Console.WriteLine("iValue={0},fValue={1}",iValue,fValue);
Console.Write("dValue={0} ",dValue);
Console.WriteLine("cValue={0}",cValue);
Console.ReadKey();
}
}
程序中,{0}和{1}分别代表后面的参数,0为第一个参数,1为第二个,以此类推。
![](http://img.blog.csdn.net/20130430111433052)
2.一般格式化输出
其形式为:
Console.WriteLine(“格式”,对象1,对象2);
如:
{0,-8} 输出第一个参数,且值占8个字符宽度,且为左对齐
{1,8} 输出第一个参数,且值占8个字符宽度,且为右对齐
{1:D7} 作为整数输出第二个参数,域宽为7,用0补齐
{0:E4} 输出以指数表示,且具有4位小数
如果我想显示一个分数格式的数字该怎么办呢?C#还提供了一些特殊格式化的输出形式:
3.特殊格式化形式
下面用一个例子来说明:
using System;
class Class1
{
static void Main( )
{
int iValue = 1025;
float fValue = 10.25f;
double dValue = 10.25;
Console.WriteLine("{0} {0:000000}",iValue); //填充0
Console.WriteLine("{0} {0:000000}\n",dValue);
Console.WriteLine("{0} {0:######}",iValue); //填充空占位符
Console.WriteLine("{0} {0:######}\n",dValue);
Console.WriteLine("{0} {0:#,####,#00}",iValue); //逗号分隔
Console.WriteLine("{0} {0:##,###,#00}\n",dValue);
Console.WriteLine("{0} {0:0%}",fValue); //百分号
Console.WriteLine("{0} {0:0%}",dValue);
Console.ReadKey();
}
}
运行结果如下:
![](http://img.blog.csdn.net/20130430111741982)
4.日期与时间的格式化输出
下面用示例说明:
using System;
//using System.Globalization;
class Class1
{
static void Main()
{
DateTime dt = DateTime.Now;
Console.WriteLine("d {0:d}",dt);
Console.WriteLine("D {0:D}",dt);
Console.WriteLine("f {0:f}",dt);
Console.WriteLine("F {0:F}",dt);
Console.WriteLine("g {0:g}",dt);
Console.WriteLine("G {0:G}",dt);
Console.WriteLine("m {0:m}",dt);
Console.WriteLine("M {0:M}",dt);
Console.WriteLine("r {0:r}",dt);
Console.WriteLine("R {0:R}",dt);
Console.WriteLine("s {0:s}",dt);
Console.WriteLine("u {0:u}",dt);
Console.WriteLine("U {0:U}",dt);
Console.ReadKey();
}
}
![](http://img.blog.csdn.net/20130430112023775)
------- Windows Phone 7手机开发、.Net培训、期待与您交流! -------
Windows Phone 7手机开发、.Net培训、期待与您交流! -------
C#控制台输出有两种方法:Write()和WriteLine(),它们都是命名空间System中Console类的方法,且都具有多达18种或以上的重载形式,能够直接输出C#提供的所有基本数据类型。其中,Write()方法输出一个或多个值后不换行,即其后没有新行符;而WriteLine()同样是输出一个或多个值,但输出完后换行,即其后有一个新行符。
为了控制输出内容或文本的输出格式,这两种方法提供了较丰富的格式控制方法。
1.基本的数据输出形式
基本数据类型的简单输出形式为:
Console.Write("格式串",参数表);
Console.WriteLine("格式串",参数表);
using System;
class Class1
{
static void Main(string[] args)
{
short shValue= 23;
int iValue= 7;
float fValue = 25.67f;
double dValue=11.23;
char cValue='f';
Console.Write("shValue={0} ",shValue);
Console.WriteLine(); //没有参数,则只输出一个换行符,即光标移到下已行进行输出
Console.WriteLine("iValue={0},fValue={1}",iValue,fValue);
Console.Write("dValue={0} ",dValue);
Console.WriteLine("cValue={0}",cValue);
Console.ReadKey();
}
}
程序中,{0}和{1}分别代表后面的参数,0为第一个参数,1为第二个,以此类推。
2.一般格式化输出
其形式为:
Console.WriteLine(“格式”,对象1,对象2);
如:
{0,-8} 输出第一个参数,且值占8个字符宽度,且为左对齐
{1,8} 输出第一个参数,且值占8个字符宽度,且为右对齐
{1:D7} 作为整数输出第二个参数,域宽为7,用0补齐
{0:E4} 输出以指数表示,且具有4位小数
格式字符 | 说明 | 注释 | 示例 | 示例输出 |
C | 区域指定的货币格式 | Console.Write(“{0:C}”,3.1); Console.Write(“{0:C}”,-3.1); | $3.1 ($3.1) | |
D | 整数,用任意的0填充 | 若给定精度指定符,如{0:D5},输出将以前导0填充 | Console.Wirte(“{0:D5}”,31); | 00031 |
E | 科学表示 | 精度指定符设置小数位数,默认为6位,在小数点前面总是1位数 | Console.Write(“{0:E}”,310000); | 3.100000E+003 |
F | 定点表示 | 精度指定符控制小数位数,可接受0 | Console.Write(“{0:F2}”,31); Console.Write(“{0:F0}”,31); | 31.00 31 |
G | 普通表示 | 使用E或F格式取决于哪一种是最简捷的 | ConsoleWrite(“{0:G}”,3.1); | 3.1 |
N | 数字 | 产生带有嵌入逗号的值,如3,100,000.00 | Console.Write(“{0:N}”,3100000); | 3,100,000.00 |
X | 十六进制数 | 精度指定符可以用于前导填充0 | Console.Write(“{0:X}”,230); Console.Write(“{0:X}”,0xffff); | FA FFFF |
3.特殊格式化形式
说明符 | 说明 |
0 | 零占位符,若可能,则填充位 |
# | 空占位符,若可能,则填充位 |
. | 显示一个句号,用做小数点 |
, | 使用逗号将数字分组 |
% | 将数字显示为百分数,如2.34将显示为:234% |
\ | 转义字符 |
‘abc’ | 显示单引号内的文本 |
“abc” | 显示双引号内的文本 |
using System;
class Class1
{
static void Main( )
{
int iValue = 1025;
float fValue = 10.25f;
double dValue = 10.25;
Console.WriteLine("{0} {0:000000}",iValue); //填充0
Console.WriteLine("{0} {0:000000}\n",dValue);
Console.WriteLine("{0} {0:######}",iValue); //填充空占位符
Console.WriteLine("{0} {0:######}\n",dValue);
Console.WriteLine("{0} {0:#,####,#00}",iValue); //逗号分隔
Console.WriteLine("{0} {0:##,###,#00}\n",dValue);
Console.WriteLine("{0} {0:0%}",fValue); //百分号
Console.WriteLine("{0} {0:0%}",dValue);
Console.ReadKey();
}
}
运行结果如下:
4.日期与时间的格式化输出
格式指定符 | 名称 | 格式 |
d | 短日期格式 | mm/dd/yy |
D | 长日期格式 | day,month,dd,yyyy |
f | 完整日期/时间格式(短时间) | day,month,dd,yyyy hh:mm AM/PM |
F | 完整日期/时间格式(长时间) | day,month,dd,yyyy hh:mm:ss AM/PM |
g | 常规日期/时间格式(短时间) | mm/dd/yyyy hh:mm |
G | 常规日期/时间格式(长时间) | mm/dd/yyyy hh:mm:ss |
M或m | 月日格式 | month day |
R或r | RFC1123格式 | ddd,dd month yyyy hh:mm:ss GMP |
s | 可排序的日期/时间格式 | yyyy-mm-dd hh:mm:ss |
t | 短时间格式 | hh:mm AM/PM |
T | 长时间格式 | hh:mm:ss AM/PM |
u | 通用的可排序日期/时间模式 | yyyy-mm-dd hh:mm:ss |
U | 通用的可排序日期/时间格式 | day,month dd,yyyy hh:mm:ss AM/PM |
using System;
//using System.Globalization;
class Class1
{
static void Main()
{
DateTime dt = DateTime.Now;
Console.WriteLine("d {0:d}",dt);
Console.WriteLine("D {0:D}",dt);
Console.WriteLine("f {0:f}",dt);
Console.WriteLine("F {0:F}",dt);
Console.WriteLine("g {0:g}",dt);
Console.WriteLine("G {0:G}",dt);
Console.WriteLine("m {0:m}",dt);
Console.WriteLine("M {0:M}",dt);
Console.WriteLine("r {0:r}",dt);
Console.WriteLine("R {0:R}",dt);
Console.WriteLine("s {0:s}",dt);
Console.WriteLine("u {0:u}",dt);
Console.WriteLine("U {0:U}",dt);
Console.ReadKey();
}
}
------- Windows Phone 7手机开发、.Net培训、期待与您交流! -------
相关文章推荐
- C#学习日记02--输入与输出
- 教学思路C#之入门四 认识控制台,学习输入输出
- 教学思路C#之入门四 认识控制台,学习输入输出
- 黑马程序员_学习日记4_C#基础归纳总结之继承
- C#学习笔记—控制台与消息框输出
- 黑马程序员_学习日记10_复习C#(基础)
- 黑马程序员_学习日记2_有关C#基础知识总结归纳之对象和类型
- 黑马程序员——C#学习日记之字符串处理函数
- 黑马程序员-C#面向对象学习日记
- 黑马程序员-我的第五篇学习日记:OC#import的作用,类的设计,类的声明和实现
- 黑马程序员——C#学习日记之循环及嵌套使用
- 黑马程序员_学习日记11_复习C#(高级)
- 黑马程序员_学习日记5_C#基础归纳总结之派生类的构造函数
- 黑马程序员_学习日记23_C#基础知识补充(StringBuilder、ArrayList、HashTable)
- 黑马程序员之C#编程基础学习笔记:将一个字符串数组输出为|分割的形式,比如“梅西|卡卡|郑大世"
- 黑马程序员_学习日记6_C#基础归纳总结之堆栈分配图解
- 黑马程序员_学习日记1_C#基础
- 黑马程序员之c#学习笔记:按照“2012年12月21日”的格式重新输出
- 黑马程序员_学习日记7_C#基础归纳总结之泛型
- 黑马程序员_学习日记3_C#基础归纳总结之结构