Šta je ovaj alat?
За обичан ASCII текст (енглеска слова, цифре, основна интерпункција), број карактера и број бајтова су исти број — сваки карактер заузима тачно један бајт у UTF-8. Чим текст укључи акцентована слова, кинеске/јапанске/корејске карактере, ћирилицу, арапски, емоџије или већину других карактера ван ASCII-ја, ово више не важи: један карактер може заузети 2, 3 или 4 бајта у UTF-8, и 2 или 4 бајта у UTF-16.
Ово је важно кад год систем има ограничење у бајтовима, а не у карактерима — SMS поруке, величине колона у базама података, ограничења API оптерећења и неке друштвене платформе мере све у бајтовима, не у карактерима, тако да исти текст може тихо премашити ограничење у зависности од језика или симбола које садржи.
Zašto ga koristiti?
- Приказује број карактера, UTF-8 бајтове и UTF-16 бајтове један поред другог.
- Исправно броји емоџије и друге карактере ван Basic Multilingual Plane као један карактер, не два.
- Ажурира се уживо док куцате — нема дугме за кликање.
- Ради у потпуности у вашем прегледачу — без отпремања.
- Бесплатно, без регистрације, без ограничења.
Kako se koristi
- Укуцајте или налепите текст у поље.
- Прочитајте број карактера, број UTF-8 бајтова и број UTF-16 бајтова испод — ажурирају се док куцате.
Primer
Unos
Hello, 世界! 🌍Rezultat
12 карактера, 19 UTF-8 бајтова, 26 UTF-16 бајтоваASCII део ("Hello, " и "! ") заузима 1 бајт по карактеру у UTF-8. Сваки кинески карактер заузима 3 бајта, а емоџи заузима 4 бајта — зато је број бајтова приметно већи од броја карактера.
Уобичајене употребе
- Провера да ли ће вишејезични опис производа стати у колону базе података дефинисану дужином у бајтовима, а не бројем карактера.
- Процена коришћења SMS сегмената, пошто се SMS наплаћује и дели по величини у бајтовима, а нелатинични текст има другачије ограничење по сегменту.
- Потврђивање да API оптерећење или поље обрасца остаје испод ограничења величине заснованог на бајтовима пре слања.
- Разумевање зашто систем са провером дужине заснованом на бајтовима одбија низ који „изгледа кратко”.
Često postavljana pitanja
Зашто се број карактера и број бајтова не поклапају?
Unicode текст се чува као бајтови, а колико бајтова је потребно сваком карактеру зависи од кодирања и самог карактера. У UTF-8, ASCII карактери заузимају 1 бајт, већина акцентованих латиничних слова и ћирилица/грчки/хебрејски/арапски заузимају 2 бајта, већина CJK карактера заузима 3 бајта, а емоџији обично заузимају 4 бајта. Број карактера једноставно броји симболе, без обзира како су сачувани.
Који број бајтова треба да користим за поље са ограничењем у бајтовима?
Користите кодирање које систем заиста користи за чување или пренос текста — већина модерних веб API-ја, база података и датотека користи UTF-8, па је број UTF-8 бајтова обично релевантан. Неки старији системи (као што је интерно рад са низовима у Windows/Java) користе UTF-16.
Да ли овај алат исправно броји емоџије?
Да. Многи емоџији су интерно сачувани као пар UTF-16 „сурогат” кодних јединица, које наивне методе бројања броје као 2 карактера. Овај алат исправно броји Unicode кодне тачке, тако да се емоџи броји као 1 карактер, у складу са тим колико карактера особа заправо види.
Да ли је ово исто што и алат Бројач речи?
Не — Бројач речи се фокусира на број речи и реченица за писање. Овај алат се посебно бави величином у бајтовима у односу на број карактера, што је важно за техничка ограничења, а не за захтеве у вези са бројем речи.
Да ли се мој текст негде отпрема?
Не. Бројање се одвија локално у вашем прегледачу помоћу уграђеног JavaScript кодера текста; ништа се не шаље на сервер.