Non c'è moltissimo nel codice:

riga = inInse.readLine(); //estrae prima riga
riga = riga + "\r\n" + inInse.readLine(); //estrae e accoda seconda riga


inserzione = riga + ";" + str+"\r\n";
System.out.println(inserzione); //qui la stringa viene stampata per intero
pw.println(inserzione); // qui no


la variabile str viene troncata come si può vedere qui sotto:

da così:
</SPAN></SPAN><SPAN style=""LINE-HEIGHT: 115%25; FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 10pt; mso-themecolor: text1"">Esercizio del Diritto di Recesso<o....

a così:
</SPAN></SPAN><SPAN style=""LINE-HEIGHT: 115%25; FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 10pt; mso-themecolor:


Non so che altro potrei aggiungere...