Lowercase ae ligatureMicro sign
ASCII 230 is æ on Windows and µ in old DOS.
æ (Small AE) is byte 230 in Windows-1252, Unicode U+00E6. Danish, Norwegian, Icelandic and Faroese use it as a letter (æble, sæl), and older English kept it in spellings like encyclopædia. For search, the tools disagree. Unicode normalization never turns æ into ae, but Elasticsearch's asciifolding filter does, so an index built with it matches aeble to æble while a database comparison, even with an accent-insensitive collation, may not. Test your own stack with a word like æble before promising users that both spellings work. Old DOS had æ at 145. In UTF-8 it's C3 A6, which misreads as æ. The HTML entity is æ.
µ (Micro Sign) is byte 230 in code page 437, the original IBM PC character set, and maps to Unicode U+00B5. It sits in the Greek row as mu, but standard tables map it to the micro sign rather than the Greek letter μ (U+03BC), which works out well for units like µs and µm. It also makes µ one of only two characters in the row 224 to 239 that survive a conversion to Windows-1252, where it's byte 181; the other is ß. Every α, π or Ω in a DOS file turns into a question mark on the way. Read as Windows-1252 without converting, the byte is æ, so 5 µg becomes 5 æg. Code page 850 kept µ here.
#include <stdio.h>int main(void) {/* On Windows (code page 1252) byte 230 is æ.Modern terminals expect UTF-8, so print the code point, not the byte. */printf("\u00E6\n"); /* UTF-8: C3 A6 */unsigned char b = 230; /* the raw Windows-1252 byte */printf("%d 0x%02X\n", b, b); /* 230 0xE6 */return 0;}
#include <stdio.h>int main(void) {/* Byte 230 is µ only on a console using code page 437(chcp 437 on Windows, or DOSBox). On a UTF-8 terminal thelone byte 0xE6 is invalid and prints as garbage, often �. */putchar(230);/* char is signed on x86, so a plain char holding 0xE6 is -26.Use unsigned char when you compare or index by byte value. */char c = (char)230;unsigned char u = 230;printf("\n%d %d\n", c, u); /* -26 230 *//* Portable: print the Unicode character as UTF-8 instead. */printf("\u00B5\n"); /* C2 B5 */return 0;}
µ is also ASCII 181 on Windows, which has the full guide.
The browser sends UTF-8, but the servlet API decodes request parameters as ISO-8859-1 unless told otherwise, so æ's two bytes turn into à and ¦. Call `request.setCharacterEncoding("UTF-8")` before the first getParameter(), ideally in a filter that runs for every request. Once a parameter has been read, the encoding can't be changed for that request anymore.
Because accents split on that group of words. American and northern English speakers say bath and grass with /æ/, the same vowel as in cat, while southern British English uses the long /ɑː/. Each dictionary follows its reference accent, so an American one prints /bæθ/ and a British one /bɑːθ/.
The instrument software wrote its file in a DOS code page, and whatever you opened it in read the micro sign's byte as the Windows-1252 æ. Reimport it with the file origin set to a DOS code page, 437 or the European 850, and every µ comes back at once. If you patch by hand instead, only replace an æ that sits directly before a unit letter.
The instrument software wrote its file in a DOS code page, and whatever you opened it in read the micro sign's byte as the Windows-1252 æ. Reimport it with the file origin set to a DOS code page, 437 or the European 850, and every µ comes back at once. If you patch by hand instead, only replace an æ that sits directly before a unit letter.