POMOCY-Java

0

Mam problem a mianowicie:

Napisałem czata w Javie. Wszystko działa i ogólnie jest ok
ALE... potrzebuję wrzucić tam blokowanie adresów IP.

Serwer pobiera adres IP od Klienta i w tym momencie powinien
sprawdzić czy tego adresu nie ma na liście banów.
Lista jest w pliku .txt (można by to załatwić jeszcze za pomocą tablicy
tylko, że wtedy nie ma za dużo możliwości żeby dodać jakieś nowe
adresy do listy).

Kto ma jakiś konkretny pomysł jak to załatwić

POMOCY

Dzięki z góry!

Pomóżcie, proszę !

0

mam pytanko: jak napisalem chata nie mogac rozwiazac takiego prostego problemu?

kiedys cos takiego pisalem... tutaj nie ma tylko usuwania starych wpisow... sam se wymyslisz juz

import java.io.;
import java.util.
;

public class IpBlocker {
Date start;
IpBlocker(String s,String nick, long time){
start = new Date();
try {
BufferedWriter file = new BufferedWriter(new FileWriter("user/block.txt",true));
String zapis = "<" + start.getTime() +":";
time =start.getTime()+(time601000);
file.write(zapis+time+":"+s+":"+nick+":>\n");
file.flush();
file.close();
}catch(Exception e){
System.out.println("IpBlocker: "+e);
}

}
public static boolean isBaned(String s){
try {
BufferedReader in = new BufferedReader(new FileReader("user/block.txt"));
String line="";
while(line != null){
if(line.indexOf(s)!=-1)
if((""+line.charAt(line.indexOf(s)+s.length())).equals(":") & (""+line.charAt(line.indexOf(s)-1)).equals(":")){
Date data = new Date();
line=line.substring(1,line.length()-1);
StringTokenizer tokeni = new StringTokenizer(line,":");
tokeni.nextToken();

long i = Long.parseLong(tokeni.nextToken()) - data.getTime();
i = i/1000;
System.out.println("pozostalo: "+i);
if(i<1)
return false;
else
return true;
}
line=in.readLine();
}

} catch(Exception e) { System.out.println("isBanned: "+e);}

return false;
}

public static void main(String[] arg){
if(arg[0].equals("read")){
try {
BufferedReader in = new BufferedReader(new FileReader("user/block.txt"));
String line="";
while(line != null){
System.out.println(line);
line=in.readLine();
}
} catch(Exception e) { }

} else {
try{
IpBlocker block = new IpBlocker(arg[0], arg[1],Long.parseLong(arg[2]));
}catch(Exception e){
System.out.println(IpBlocker.isBaned(arg[0]));
}

}

}

}

0

Odpowiadając na pytanko:
Dla każdego jest trudne tylko to czego nie potrafi rozwiązać ;-) :-)

<font size="12"><font color="red">DZIĘKI BARDZO ZA POMOC</span></span> !!!!!!

1 użytkowników online, w tym zalogowanych: 0, gości: 1