işte benim kodum. [... 020406,020407] ve ben böyle bir şey olan dosyalarda desen arıyorum: Ben tarih ArrayList tarih benziyor hangi depolamak, ArrayList dize değişkeni ile desen eşleşiyor
c001z020102
c002z020103
...
Kodu:
private void printReaderContent(BufferedReader reader) throws IOException {
String line = null;
for(String tmp : dates) {
while ((line = reader.readLine()) != null) {
if (line.matches("[c]{1}[0-9]{3}[z]{1}" + tmp)) {
xmlCodes.add(line);
} else {
}
}
}
System.out.println(xmlCodes);
}
yüzden kodumda olduğu gibi bir yöntemle eşleşiyor ve bu kalıbı birleştirmek için tmp değişkeni eklemeye çalışıyorum, böylece dosyadan seçtiğim sonuçları alabilirim. [C] {1} [0-9] {3} [z] {1} [0-9] {2} [0-9] {2} [0-9] {2} gibi standart kalıp kullanırsam işe yaradı, ama her şey yerine ben boş arrayList döndü :(Ben jodaTime ben tarihleri depolamak ve arasındaki gün miktarını hesaplamak için kullanıyorum olsun arrayList tmp koydu:
public void countDatesBetween()
{
int days = Days.daysBetween(dataPierwsza, dataOstatnia).getDays();
for (int i = 0; i <= days; i++)
{
DateTime d = dataPierwsza.withFieldAdded(DurationFieldType.days(), i);
dates.add(d.toString("yyMMdd"));
}
}
ben birden hatları ile bir dosya var belirli bir desen, örneğin: c001z040206. Kullanıcı 2014-06-06 ve 2014-06-08 --- gibi 2 tarih koyar.> coundDatesBetween bir arrayList (date.toString ("yyMMdd") oluşturur; şöyle görünür: [140606, 140607 (140608]. Daha sonra, "[c] {1} [0-9] {3} [z] {1}" şeklindeki c001z için bu kalıpta dosya aramak istiyorum ve seçili tarihi temelde yinelenen tmp'den almak istiyorum tarihler ArrayList: Yani şöyle olmalı: c001z140606 ---> dosyayı bul ve xmlCodes String ArrayLis'e dön t, ama sadece boş arraylist dönüyor.
Yapmaya çalıştığınız veya gördüğünüz şey tam olarak bana göre değil - size yardımcı olmak daha kolay olurdu. (Özellikle, 'countDatesBetween' sorununun geri kalanıyla ne ilgisi olduğunu göremiyorum.) –
Yorumlara bilgi eklemeyin. Sorunuzu her zaman güncelleyin – GhostCat