实例比较C#与C++字符串操作
2010-12-07 16:29
330 查看
操作实例:从文本文件a.txt中读入如下格式数据:“.000000,.000000,.000000,1.000000,2.000000,3.000000,1.000000,.000000,1.000000,2.000000,.000000,3.000000,.000000,2.000000,2.000000,2.000000,2.000000,3.000000,2.000000,.000000,.000000,.000000,2.000000,2.000000,3.000000,.000000,3.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,.000000,……”(一共有84750个数据),将读入的字符串按”,”进行分割,分割后存入字符串数组,再将字符串数组中每个字符串转换成整形数据,即将字符串数组转换成整形数组。
C#实现:
string[] data;
StreamReader sr = new StreamReader(‘E:/a.txt’,System.Text.Encoding.Default);
//打开文件
StringBuilder output = new StringBuilder();
string rl;
while ((rl = sr.ReadLine()) != null)
{
output.Append(rl);
}
data = output.ToString().Split(','); //按“,“分割字符串
int[] idata = new string[data.Length/2];
for(int i=0;i<data.Length;i++)
{
idata[i]=Convert.ToInt32(data[i].ToString()); //类型转换
}
C++(WIN32 API)实现:
char str[1000000];
char tstr[84750][7];
int smh[84750];
int j=0;
int k=0;
DWORD Len=0;
DWORD SL=0;
HANDLE hFile = CreateFile (TEXT("E:/dm.txt"), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
ReadFile(hFile,str,1000000,&Len,NULL); //将文件数据读入字符串str
SL=strlen(str);
for(int i=0;i<SL;i++) //按‘,‘分隔字符串
{
if((str[i]!=',')&&(str[i]!=NULL))
{
tstr[j][k]=str[i];
k++;
}
else if((str[i]==',')&&(str[i]!=NULL))
{
j++;
k=0;
}
else
{
break;
}
}
for(int i=0;i<84750;i++) //将字符串转换成整型数
{
smh[i]=atoi(tstr[i]);
}
经过比较,感觉C#对字符串的处理还是比较方便的。
C#实现:
string[] data;
StreamReader sr = new StreamReader(‘E:/a.txt’,System.Text.Encoding.Default);
//打开文件
StringBuilder output = new StringBuilder();
string rl;
while ((rl = sr.ReadLine()) != null)
{
output.Append(rl);
}
data = output.ToString().Split(','); //按“,“分割字符串
int[] idata = new string[data.Length/2];
for(int i=0;i<data.Length;i++)
{
idata[i]=Convert.ToInt32(data[i].ToString()); //类型转换
}
C++(WIN32 API)实现:
char str[1000000];
char tstr[84750][7];
int smh[84750];
int j=0;
int k=0;
DWORD Len=0;
DWORD SL=0;
HANDLE hFile = CreateFile (TEXT("E:/dm.txt"), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
ReadFile(hFile,str,1000000,&Len,NULL); //将文件数据读入字符串str
SL=strlen(str);
for(int i=0;i<SL;i++) //按‘,‘分隔字符串
{
if((str[i]!=',')&&(str[i]!=NULL))
{
tstr[j][k]=str[i];
k++;
}
else if((str[i]==',')&&(str[i]!=NULL))
{
j++;
k=0;
}
else
{
break;
}
}
for(int i=0;i<84750;i++) //将字符串转换成整型数
{
smh[i]=atoi(tstr[i]);
}
经过比较,感觉C#对字符串的处理还是比较方便的。
相关文章推荐
- C#字符串比较及截取子字符串的操作
- C#中字符串的比较操作
- C++ 中字符串操作--宽窄字符转换的实例详解
- C++中字符串查找操作的两则实例分享
- Python 字符串(三)-字符串操作实例(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
- C#字符串操作实例
- C#操作字符串方法总结实例代码
- C#自定义的字符串操作增强类实例
- java比较日期大小及日期与字符串的转换【SimpleDateFormat操作实例】
- java比较日期大小及日期与字符串的转换【SimpleDateFormat操作实例】
- java比较日期大小及日期与字符串的转换【SimpleDateFormat操作实例】
- C#中字符串的比较操作
- 谈c++ 和 c#关于字符串和其它类型的相加操作
- 谈c++ 和 c#关于字符串和其它类型的相加操作
- C和C++中的字符串操作(比较详细)
- C++实验6-字符串操作
- c# 线程操作实例
- C++ 超短字符串比较
- C# 与 C 、 C++ 、 D 、 Java 的性能比较(三)
- 1155: 字符串比较 多实例