请教c#字符串取反string a1 = "A1B2C3D4";
想达到取反的结果是:D4C3B2A1请教写个详细代码,达到以上要求。谢谢C#
想达到取反的结果是:D4C3B2A1请教写个详细代码,达到以上要求。谢谢C#
解决方案 »
- 怎么实现C#判断连网状态
- 关于NET2.0,3.5之类问题
- (高手,救命啊!!!)不点击treeview子节点,实现点击事件。(急)
- Encoding.Unicode.GetBytes("一")转换问题
- 请问有没有c# 语言翻译为vb.net 的工具?
- JAVA 提工的 WebService接口 需要API鉴权 我用DOT如何访问?
- 在C#中如何得到一个字符的宽度
- PacketArrivedEventArgs 的类怎么用呀,还有在什么命名空间里。
- 两个关于水晶报表的问题
- 为什么这样查询得不到结果!!!急!!!
- WPF,请问这个几何图形如何设置线条的粗细
- 求 一个基于C#编写的视频播放器能播放mp4格式的播放器的源代码谢谢
{
string a1 = "A1B2C3D4";
char[] rs = a1.ToCharArray();
char[] result = rs.Reverse().ToArray<char>();
Console.WriteLine(result);
}
string a1 = "A1B2C3D4";
string[] arr = a1.Where((x, y) => y % 2 == 1).Select((v, i) => Convert.ToString(a1[2 * i]) + Convert.ToString(a1[2 * i + 1])).Reverse().ToArray();
{
string a1 = "A1B2C3D4";
string opposite="";
int len = a1.Length;
int pos = len-1;
for (int i = 0; i < len; i++)
{
opposite += a1.Substring(pos,1);
pos--;
}
Console.WriteLine(opposite);
Console.ReadLine();
}
private void button2_Click(object sender, EventArgs e)
{
string a1 = "A1B2C3D4";
char[] rs = a1.ToCharArray();
char[] result = rs.Reverse().ToArray<char>();
Console.WriteLine(result);
}所以,rs.Reverse()编译器,不能通过
还是出错呢??
有什么好方法吗?
string b1 = string.Empty;
for (int i = a1.Length - 1; i >= 0; i--)
{
b1 += a1[i];
}
那是泛型,你用的是.net framework 2.0版本?用下面这个
string a1 = "A1B2C3D4";
char[] rs = a1.ToCharArray();
char[] result = new char[rs.Length];
for (int i = 0; i < rs.Length; i++)
{
result.SetValue(rs[rs.Length - i], i);
}
Console.WriteLine(result);
看好需求:本来是:A1B2C3D4
需求结果是:D4C3B2A12位2位反取。
如果按照您们的程序就成了倒序了。
string a1 = "A1B2C3D4";
取反想达到的效果是:D4C3B2A1并不是:4D3C2B1A 得看清楚了啊。
{
string a1 = "A1B2C3D4";
string[] temp = new string[a1.Length / 2];
for (int i = 0, j = 0; i < a1.Length && j <= a1.Length; i = i + 2, j++)
{
temp[j] = a1[i] + "" + a1[i + 1];
} string result = string.Empty;
for (int i = temp.Length - 1; i >= 0; i--)
{
result += temp[i];
} Console.WriteLine(result);
}
{
string a1 = "A1B2C3D4";
char[] arrA = new char[8];
char[] arrB = new char[8]; arrA = a1.ToCharArray(); for (int i = 0; i < 8; i += 2)
{
arrB[i] = arrA[6 - i];
arrB[i + 1] = arrA[7 - i];
} foreach (char b in arrB)
{
Console.Write(b);
}
Console.Read();
}
就是颠倒字符串操作的思路,只不过一次操作两位
string a1 = "A1B2C3D4";
string[] arr = a1.Where((x, y) => y % 2 == 1).Select((v, i) => Convert.ToString(a1[2 * i]) + Convert.ToString(a1[2 * i + 1])).Reverse().ToArray();
Console.Read();
这个读取错误
string a1 = "A1B2C3D4";
string[] arr = a1.Where((x, y) => y % 2 == 1).Select((v, i) => Convert.ToString(a1[2 * i]) + Convert.ToString(a1[2 * i + 1])).Reverse().ToArray();
编译不了,代码不知那错
Console.Read();
这个读取错误
其实foreach开始,后面可以不要,真正有用的就是那个循环,后面只是为了把结果显示出来
int len = str.Length;
int x = len;
string str2 = "";
for (int i = 0; i < len / 2; i++)
{
x = x - 2;
str2 = str2 + str.Substring(x,2);
}
this.da.Text = str2;
string s = "A1B2C3D4";
string r = Regex.Replace(new string(s.ToCharArray().Reverse().ToArray()), @"(.)(.)", "$2$1");
Console.WriteLine(r);
.net 2.0:
string s = "A1B2C3D4";
char[] chars = s.ToCharArray();
Array.Reverse(chars);
string r = Regex.Replace(new string(chars), @"(.)(.)", "$2$1");
Console.WriteLine(r);
string ss = "";
for (int i = strs.Length - 1; i >= 0; i -= 2)
{
ss += strs[i].ToString() + strs[i - 1].ToString();
}
var data = Convert.ToInt32(a1, 16);
data = System.Net.IPAddress.HostToNetworkOrder(data);
a1 = data.ToString("X");
string ss = "";
for (int i = strs.Length - 2; i >= 0; i -= 2)
{
ss += strs[i].ToString() + strs[i+1].ToString();
}
string[] temp = new string[a1.Length / 2];
for (int i = 0, j = 0; i < a1.Length && j <= a1.Length; i = i + 2, j++)
{
temp[j] = a1[i] + "" + a1[i + 1];
} string result = string.Empty;
for (int i = temp.Length - 1; i >= 0; i--)
{
result += temp[i];
}
this.Text = result;23楼也写对了,程序简单了一些。
string str = "A1B2C3D4";
int len = str.Length;
int x = len;
string str2 = "";
for (int i = 0; i < len / 2; i++)
{
x = x - 2;
str2 = str2 + str.Substring(x, 2);
}
this.Text = str2;34楼,程序也对了。并且写的最棒,最简化的就是这个了。
特别值得推荐,简单明了。
string strs = "1A2B3C4D";
string ss = "";
for (int i = strs.Length - 2; i >= 0; i -= 2)
{
ss += strs[i].ToString() + strs[i + 1].ToString();
}
this.Text = ss;