Recebo essa mensagem para ANDROID STUDIO JAVA error: constant string too long
Seria possível trabalhar com string e textos longos no android studio utf-8 ?
Por favor preciso urgente de uma resposta.
Sei que consigo trabalhar dividindo o texto em duas partes , mas no meu caso não posso dividir o texto.
grato
ate mais
Cara acredito que possível seja, se é uma String até então não vi caso que ela não possa suporta um determinado tamanho de texto(não sei o tamanho do texto que esteja passando)… Mais teria mais informações sobre, pra analisar melhor a situação como o trecho de código que da o erro ou algo do tipo
Literais do tipo String
podem ter no máximo 65.535
caracteres.
O mesmo acontece com a inicialização estática de arrays, que podem conter no máximo 65.535
elementos.
Minha sugestão é que você não utilize constante.
Crie um método para retornar a String
que você precisa.
Basicamente você vai pegar isso:
public class MinhaClasse {
public static final String MINHA_STRING_GIGANTE = "seu conteúdo gigante...";
}
E trocar por isso:
public class MinhaClasse {
private static String MINHA_STRING_GIGANTE;
public static synchronized String getMinhaStringGigante() {
if (MINHA_STRING_GIGANTE == null) {
MINHA_STRING_GIGANTE = /* aqui você inicializa ela como achar melhor, lendo o conteúdo de algum arquivo por exemplo */;
}
return MINHA_STRING_GIGANTE;
}
}
Mas se quiser insistir na constante, pode fazer assim:
public class MinhaClasse {
public static final String MINHA_STRING_GIGANTE = "um literal com no máximo 65535 caracteres"
+ "outro literal com no máximo 65535 caracteres"
+ "e mais outro literal até finalizar o conteúdo total";
}