جدا کردن تعداد کاراکترهای یک رشته در سی شارپ
سلام دوستان خسته نباشید ، من یک متغییر در سی شارپ تعریف کرده ام که مقدار آن 50680af8ca54 می باشد و من میخام کاراکتر ها رو با : از هم جدا کنم یعنی به شکل زیر :
5:68:0a:f8:ca:54
ممنون میشم راهنمایی کنید
5 پاسخ
ممنون از پاسختون . ولی من کد رو به شکل زیر در برنامه م درج کردم اما متاسفانه با پیغام خطا مواجه میشه .
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));
}
}
}
بله میخام دو کاراکتر دوکارکتر جدا کنم
الان شما دو کاراکتر دو کاراکتر می خوایید جدا کنید یا هر کاراکتر به صورت جداگانه؟
شما اول باید یه 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
کلاس 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;
}
}
}