2016-04-11 18 views
0

Bir metin dosyasına sahibim. Metin dosyası çok büyük, yaklaşık 6 milyon satır, ancak bu dosyanın yalnızca küçük bir kısmına ihtiyacım var.Bir karakter için belirli bir değer verilen bir metin dosyasının bölümlerini çıkarma

Dosya, yaklaşık 1200 karakterlik parçalara bölünmüştür. Her bir parçanın 921-922 karakterlerinin beş farklı sayıya karşılık gelip gelmediğini görmem gerekiyor. Yapmazlarsa, silinen tüm yığına ihtiyacım var.

Bunu yapmayı nasıl yaparım?

+1

Kodunuz var mı? –

+0

Kısa bir dosya ile başladım, sadece 4 veya 5 parça ve biraz kod yazmaya çalışıyorum. Eşleşmeleri ne sıklıkta beklediğinize bağlı olarak, yalnızca eşleşen parçaları yazmak ve eklemek için yeni bir dosya oluşturmak çok mantıklı olabilir. – roadrunner66

+0

Daha fazla bilgiye ihtiyacımız var. Tam olarak 1200 karakterlik parçalara nasıl ayrılırlar? Her satır bir yığın mıdır? Her öbek yeni satır karakterleri tarafından bölümlere ayrıldı mı? –

cevap

0

Sanırım en basit cevap - yazma için başka bir geçici dosya açmaktır. Bir kerede 1200 karakter okuyun (bir dizide oku ve bahsettiğiniz ofsset ile doğrudan byte karşılaştır). Durumunuz doğruysa, geçici dosyaya yazın veya başka bir şey yapmayın. Dosyayı okuduktan sonra geçici dosyayı dosyanızı yeniden adlandırın. Bu çizgiler boyunca bir şey.

İlgili konular