0
جدا کردن تعداد کاراکترهای یک رشته در سی شارپ
سلام دوستان خسته نباشید ، من یک متغییر در سی شارپ تعریف کرده ام که مقدار آن 50680af8ca54 می باشد و من میخام کاراکتر ها رو با : از هم جدا کنم یعنی به شکل زیر :
5:68:0a:f8:ca:54
ممنون میشم راهنمایی کنید
5 پاسخ
0
ممنون از پاسختون . ولی من کد رو به شکل زیر در برنامه م درج کردم اما متاسفانه با پیغام خطا مواجه میشه .
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication138
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public static class StringExtensions
{
public static IEnumerable<string> SplitByCharacters(this string str, int characters)
{
List<string> substrings = new List<string>();
for (int index = 0; index < str.Length; index += characters)
{
substrings.Add(index + characters > str.Length ? str.Substring(index) : str.Substring(index, characters));
}
return substrings;
}
}
private void button1_Click(object sender, EventArgs e)
{
var result = string.Join(":", "Welcome to ITPro.ir".SplitByCharacters(2));
}
}
}
0
بله میخام دو کاراکتر دوکارکتر جدا کنم
0
الان شما دو کاراکتر دو کاراکتر می خوایید جدا کنید یا هر کاراکتر به صورت جداگانه؟
1
شما اول باید یه Extension Method برای جدا سازی رشته بر اساس طول کاراکترها بنویسید:
public static class StringExtensions
{
public static IEnumerable<string> SplitByCharacters(this string str, int characters)
{
List<string> substrings = new List<string>();
for (int index = 0; index < str.Length; index += characters)
{
substrings.Add(index + characters > str.Length ? str.Substring(index) : str.Substring(index, characters));
}
return substrings;
}
}
حالا به صورت زیر می تونید از این متد استفاده کنید، خروجی این متد یک شئ از نوع IEnumerable هست:
var result = "Welcome to ITPro.ir".SplitByCharacters(2);
حالا باید خروجی این متد رو بر اساس کاراکتر مورد نظر به هم متصل کنید:
var result = string.Join(":", "Welcome to ITPro.ir".SplitByCharacters(2));
خروجی کد بالا به صورت زیر هست:
We:lc:om:e :to: I:TP:ro:.i:r
1
کلاس StringExtensions رو خارج از کلاس Form تعریف کنید:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication138
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var result = string.Join(":", "Welcome to ITPro.ir".SplitByCharacters(2));
}
}
public static class StringExtensions
{
public static IEnumerable<string> SplitByCharacters(this string str, int characters)
{
List<string> substrings = new List<string>();
for (int index = 0; index < str.Length; index += characters)
{
substrings.Add(index + characters > str.Length ? str.Substring(index) : str.Substring(index, characters));
}
return substrings;
}
}
}