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); |