C# ile dizinin boş elemanlarını temizleme
Bir string dizimiz olsun ve içinin dolu olduğunu varsayalım:
1
| string[] isimler = new string[10]; |
Dizi elemanlarıı uc uca ekleceyeceğimiz değişken:
1
| string Isim = String.Empty; |
Bir döngü ile dizinin tüm elemanlarını birleştirelim:
1
2
3
4
5
6
7
| for (int i = 0; i < isimler.Length; i++){ if (!String.IsNullOrEmpty(isimler[i])) { Isim += isimler[i] + "|"; }} |
String.IsNullOrEmpty methodu string değerin boş yada değersiz olduğunu döndürür.
Daha sonra Isim değişkenine dizi elemanını ve “|” karakterini ekledik.
Şimdi birleştirilen diziyi ayrıştıralım:
1
| string[] YeniIsimler = Isim.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries); |
Split methodu metni parçalamaya yarar. StringSplitOptions.RemoveEmptyEntries ile de boş elemanları döndürmedik.
İsterseniz işlemi method haline de getirebiliriz:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| private string[] CleanNulled(string[] array){ string Items = String.Empty; for (int i = 0; i < array.Length; i++) { if (!String.IsNullOrEmpty(array[i].Trim())) { Items += array[i] + "|"; } } string[] clean = Items.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries); return clean;} |
Kullanımı ise şu şekilde:
1
2
| string[] AlinanIsimler = new string[10];string[] Isimler = CleanNulled(AlinanIsimler); |