2011-12-24 37 views

Respuesta

30

Suponiendo que hay una nueva línea al final de la cadena que desea eliminar, se puede hacer esto:

s = s.substring(s.indexOf('\n')+1); 

Cuando no hay nuevas líneas, s seguiría siendo el mismo.

4

Técnicamente, porque los Macs (hasta OS 9) solía utilizar \r y como la solución aceptada no resuelve esto, lo lógico sería utilizar:

s = s.substring(s.indexOf(System.getProperty("line.separator"))+1); 

Pero como se mencionó en el comentarios, al usar este código, debes asegurarte de que no trabajes, por ejemplo en los archivos de código fuente con terminaciones de línea Unix en Windows.

+3

Dado que los únicos dos esquemas de separación de línea que son comunes son '\ n' y' \ r \ n', y el '' literal' funciona para ambos, creo que es más confiable que 'line.separator'. Considere, por ejemplo, que cuando se trabaja con archivos de código fuente con finales de línea Unix en Windows, este enfoque fallará, mientras que lo anterior tendrá éxito. Por lo tanto, para buscar '\ r \ n' en Windows es más probable que cree un error específico de plataforma que para evitarlo, en este caso. –

Cuestiones relacionadas