Chrischaaan: NullPointerException, IOException. woran kanns liegen?

Hallo

ich bekomm zwei fehler beim versuch über einen Socket daten zu verschicken:
zum einen die bekannte IO Exception
und zum andren die NullPointerException.

bei der IOException hab ich zum senden folgenden Code:

private void Schicken()
{
/** Variablendeklarationen */
Empfaenger = new String(txt_Empfaenger.getText());
SendeText = new String(txt_SendeText.getText());
/** Ende der Variablendeklarationen */

try
{
sock = new Socket(Empfaenger, 1026);
out = new DataOutputStream(sock.getOutputStream());

out.writeBytes(SendeText);

out.close();
}
catch (UnknownHostException Zielhost)
{
 lbl_Info.setText("Zielhost nicht gefunden.");
}
catch(IOException SendeFehler)
{
lbl_Info.setText("Fehler beim Senden.");
}

}

und dort wo der nullpointerfehler entsteht hab ich folgenden code:

private void tmr_schreiben_timer(Object source, Event e)
{
/** Variablendeklarationen */
Absender = new String();
/** Ende der Variablendeklarationen */

try
{
in = new DataInputStream(sock.getInputStream());

FileWriter SchreibeDatei = new FileWriter("text.txt", SpamSchutz);
BufferedWriter SchreibeText = new BufferedWriter(SchreibeDatei);
SchreibeText.write("Von: " + Absender + in);
SchreibeText.newLine();

SchreibeText.close();
in.close();
}
catch(NullPointerException Pointer)
{
lbl_Info.setText("Pointerfehler");
}
catch(IOException SchreibeFehler)
{
lbl_Info.setText("Fehler beim schreiben.");

}
}

könnte dieser nullpointer-fehler dadurch entstehen,
dass ich den text mit einem timer immer wieder neu schreibe, obwohl vielleicht gar keiner da ist?

wenn ja, warum schreibt der dann auch keinen text,
wenn ich welchen gesendet habe sondern bringt mir die ioexception?

wüde mich über antworten sehr freuen!!!

gute nacht,
christian.