当前位置:编程学习 > C#/ASP.NET >>

ASP.NET读取txt显示问题

想知道如何以ASP.NET C# webform来制作
读取指定文本文件后
再下方同时显示出内容(皆在同一网页显示)

重点是
将横式文字转换成直式方式显示

1 2 3
4 5 6

变成 
1 4
2 5
3 6

文字皆为中文~有人可帮忙解答吗 
--------------------编程问答-------------------- 我也正在研究这个问题,希望高手能写个代码。 --------------------编程问答-------------------- 行转列?
读文本比较费劲。。 --------------------编程问答--------------------

FileStream fileStream;
/// <summary>
/// 目前只能从2行转换为2列。
/// 思路为将值存为 "1 2 3 $ 4 5 6"
/// 以$的坐标为开始,向下分别输出
/// ps:文本文档中的空行为:\r
/// </summary>
void ConvertText()
{
string filePath=Server.MapPath("Text1.txt");
   
byte[] bRead;
fileStream=File.OpenRead(filePath);
int length=(int)fileStream.Length;
bRead=new byte[length];
fileStream.Read( bRead,0,length);

string strRead;
strRead=Encoding.Default.GetString(bRead);
//将空行转换为$
string strNewWord=strRead.Replace("\r","$ ");
//分隔字符串,存入数组中
string[] strSplitWord=strNewWord.Split(' ');
int bIndex=0;
int aIndex=0;
for(int i=0;i<strSplitWord.Length;i++)
{
//得到一半的索引值
if(strSplitWord[i].Equals("$"))
{
bIndex=i+1;
break;
}

}
while(aIndex<strSplitWord.Length && bIndex<strSplitWord.Length)
{
if(strSplitWord[aIndex]!=null && strSplitWord[bIndex]!=null)
{
    //输出时去掉$ 
if(strSplitWord[aIndex].Equals("$"))
strSplitWord[aIndex]="";
if(strSplitWord[bIndex].Equals("$"))
strSplitWord[bIndex]="";
//输出
Response.Write("<br>"+strSplitWord[aIndex]+" "+strSplitWord[bIndex]+"<br>");
}
aIndex++;
bIndex++;
}
    }



程序不是很好,不支持多行转多列。。。。
如果以后有兴趣了,再写吧~~~ --------------------编程问答-------------------- ...
自己发现了bug

如:文本必须写成这样:
a b c  
d f e 

c和e 后面必须有空格. -_-! ... 死了

另外,中文的问题好像没有解决.... 再死!!! 
--------------------编程问答--------------------
引用 4 楼 woyaojuzi 的回复:
... 
自己发现了bug 

如:文本必须写成这样: 
a b c  
d f e 

c和e 后面必须有空格. -_-! ... 死了 

另外,中文的问题好像没有解决.... 再死!!! 


再次测试,结果为:在c后面你必须有空格。
中文没问题。
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,