Byte order mark

From LemonWiki共筆
Jump to navigation Jump to search

Byte order mark (BOM, 位元組順序記號)

How to see Byte order mark

MySQL way

Using MySQL HEX() function "returns a string representation of a hexadecimal value of a decimal or string value specified as an argument."


Run sql on sqlfiddle.com or Download the Sql file directly.

CREATE TABLE `articles` (
  `id` varchar(50) NOT NULL,
  `notes` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `articles` (`id`, `notes`) VALUES
('1234567890', 'no BOM'),
('1234567890', 'BOM');

ALTER TABLE `articles`
  ADD UNIQUE KEY `id` (`id`) USING BTREE;

SELECT HEX(id), id, notes FROM articles;
HEX(id) id notes
31323334353637383930 1234567890 no BOM
EFBBBF31323334353637383930 1234567890 BOM

File command way

Using file (command): file filename.txt on Linux   , macOS icon_os_mac.png [1] & Cygwin on Win  


File content Example result returned by file command
File contains BOM UTF-8 Unicode (with BOM) text
File NOT contains BOM UTF-8 Unicode text

References