110,538
社区成员
发帖
与我相关
我的任务
分享
class Program
{
const int TABCOUNT = 8;
static void Main(string[] args)
{
string s = "a\tb\nabc\t123";
Console.WriteLine(s);
Console.WriteLine(GetOutputCount(s));
}
static int GetOutputCount(string str)
{
int count = 0;
foreach (char ch in str)
{
switch (ch)
{
case '\t':
count = TABCOUNT * (count / TABCOUNT + 1);
break;
case '\n':
count = 0;
break;
default:
count += Encoding.Default.GetByteCount(ch.ToString());
break;
}
}
return (count);
}
}