Új hozzászólás Aktív témák
-
Karma
félisten
válasz
XperiaP
#1798
üzenetére
Végülis ja, ez inkább valami megjelenítési dolognak tűnik, ahogy megfagy... Van valami TextWatcher ezen az EditTexten? A mérete, különösen a szélessége fix?
WonderCsabo: Használtad már a GridLayoutot? Nekem elég rossz tapasztalataim vannak vele élesben, pedig nagyon kéne egy ilyen jellegű layout...
-
Karma
félisten
válasz
XperiaP
#1795
üzenetére
Alapjáraton erre gondoltam:
StringBuilder text = new StringBuilder();
br = new BufferedReader(new FileReader(filePath));
char[] bytes = new char[131072];
int numRead = 0;
while ((numRead = br.read(bytes)) >= 0) {
text.append(new String(bytes, 0, numRead));
}
EditText tv = (EditText) findViewById(R.id.editText2);
tv.setText(text.toString());Még ezen is lehetne javítani, ha nem blokkonként csinálsz új stringet, hanem byte tömbbe olvasod az egészet, és egy konstruktorhívással letudod a dolgot. (new String(buffer, 0, buffer.length, "UTF-8"))
Viszont egyáltalán nem biztos, hogy ennyi elég, csak kozmetikázza a valódi problémát (EditText)...
-
Karma
félisten
válasz
XperiaP
#1793
üzenetére
A tv.setText() hívás durván költséges, karöltve a folyamatos memóriadarálással a string konkatenálás miatt... Használj StringBuffert az adat összegyűjtéséhez, és a setText()-et csak egyszer hívd meg. Mondjuk ekkor sincs garancia arra, hogy jól fog menni (nem biztos hogy fel van készítve ekkora tartalomra a control).
Javárj, most olvasom újra. Ha van StringBuildered, akkor minek dekódolod még egyszer kézzel?

-
Karma
félisten
válasz
XperiaP
#1688
üzenetére
Ennek így nem sok értelme van.
A Java mindig kiegészített UCS-2-vel dolgozik, így ha valamit megjelenítesz, az is Unicode lesz praktikusan. Az adott Unicode szöveg UTF-8 kódolt alakja annyira nem izgalmas/hasznos.Nem UTF-8 szöveget akarsz inkább dekódolni és megjeleníteni?
Mert erre több lehetőséged is van: ha byte tömbbe olvastad a fájlt, akkor a new String(byte[], Charset) konstruktort használhatod. Ha meg Streamed van (jobban megéri, mint a teljes anyagot betölteni és alakítani, pazarolva a memóriát és a GC időt), akkor egy InputStreamReader kell, aminek szintén van Charsetes konstruktora. -
Karma
félisten
válasz
XperiaP
#1675
üzenetére
Használd az URLDecoder osztályt az URL visszaalakításához.
Új hozzászólás Aktív témák
- Bomba ár! Dell Latitude 5290 - i5-8GEN I 16GB I 256SSD I 12,5" HD I Cam I W11 I Garancia!
- LG 32MR50C-B Monitor
- AKCIÓ!!!! Dell Precision 3571 4G LTE i7-12700H 16GB 512GB FHD RTX A1000 4GB 1 év teljeskörű garancia
- Dell PowerEdge R820 4x Xeon 688GB ECC RAM
- PlayStation 5 Slim (lemezes) + kontroller 2027.12.17-ig garancia, számlával!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

