0 bytes
Drop file to load
Base64
 

Everything runs in your browser. Your XML and files are never uploaded to Flipper File.

XML to Base64 Converter

Encode XML to Base64, or decode Base64 back to readable XML, right in your browser. Text is encoded as UTF-8, so accented letters, symbols, and other languages come back exactly as they went in. You can also check that the XML is well-formed, make the output URL-safe, wrap it for email, or turn it into a data URI.

How to use it

  1. Choose Encode to turn XML into Base64, or Decode to turn Base64 back into XML.
  2. Paste your XML or Base64 on the left, or load a file. The result appears on the right as you type.
  3. Click Copy or Download. Swap moves the result into the input and switches direction, which is a quick way to check a round trip.

Encoding options

  • Line wrap: breaks the Base64 into lines of 64 or 76 characters. MIME email uses 76, and PEM files use 64. Leave it off for APIs and JSON.
  • URL-safe: uses - and _ instead of + and /, and drops the = padding, so the result can go in URLs, file names, and tokens without escaping.
  • Data URI: adds data:application/xml;base64, to the start, so you can use the result directly in a link or a src attribute.
  • Check XML: warns you if the XML isn't well-formed, with the line and column of the problem. The XML is still encoded either way.

Decoding Base64

The decoder is forgiving about formatting. It accepts Base64 with line breaks or spaces, URL-safe Base64, data URIs, and Base64 that's missing its = padding. If something isn't valid, it shows exactly which character is the problem. Turn on Format decoded XML to indent the result so it's easier to read.

If the Base64 holds a file instead of text, like an image or a PDF, the converter tells you what kind of file it looks like, and Download saves the original file.

Example

This short XML document:

<note><to>Zoë</to></note>

encodes to this Base64:

PG5vdGU+PHRvPlpvw6s8L3RvPjwvbm90ZT4=

The w6s in the middle is the letter ë. It takes two bytes in UTF-8, which is why encoders that skip UTF-8 handle letters like it incorrectly.

Why encode XML as Base64?

Base64 turns any data into plain letters, numbers, and a few symbols, so it can travel safely through systems that only handle text. It's commonly used to send XML inside JSON or another XML document, in SOAP and SAML messages, in email attachments, and in API fields that would otherwise break on angle brackets, quotes, or line breaks.

Base64 is an encoding, not encryption. Anyone can decode it, so don't use it to hide passwords or private data. It also makes data about 33% larger, because every 3 bytes become 4 characters.

Frequently asked questions

Why does the Base64 end with = or ==?

Base64 works in groups of 3 bytes. When the data doesn't divide evenly, = signs pad the end to a full group. URL-safe Base64 usually leaves the padding out.

Can I encode files other than XML?

Yes. Load any file up to 25 MB, including images and PDFs, and it's encoded exactly as it is.

Is my data uploaded?

No. Encoding and decoding happen entirely in your browser, so your XML never leaves your device.

Our Full Dev Tool Library

[tcb_post_list query="{'paged':1,'filter':'custom','post_type':|{|'page'|}|,'related':|{||}|,'orderby':'date','order':'DESC','posts_per_page':'100','offset':'1','no_posts_text':'There are no posts to display.','exclude_current_post':|{||}|,'queried_object':{'ID':1975,'post_author':'1'},'dynamic_filter':{'category':'category','tag':'tag'},'sticky':|{||}|,'rules':|{|{'taxonomy':'category','terms':|{|'26'|}|,'operator':'AND'}|}|}" type="grid" columns-d="3" columns-t="1" columns-m="1" vertical-space-d="30" horizontal-space-d="30" ct="post_list-74116" ct-name="Small size 10" tcb-elem-type="post_list" pagination-type="none" pages_near_current="2" dynamic_filter='{"category":"category","tag":"tag"}' element-name="Post List" css="tve-u-19c87e21136" total_post_count="123" total_sticky_count="0" posts_per_page="100" featured-content="0" disabled-links="0" article-tcb_hover_state_parent="" no_posts_text="There are no posts to display." horizontal-space-m="0" horizontal-space-t="15" vertical-space-t="10" vertical-space-m="15" article-css="tve-u-1855901a3d4" article-shortcode="tcb_post_list" class='' article-tcb_hover_state_parent='' article-css='tve-u-1855901a3d4' article-shortcode='tcb_post_list' ][tcb_post_list_dynamic_style][/tcb_post_list_dynamic_style]

[tcb_post_categories css='tve-u-19c87e21143' link='1' rel='0' target='0' inline='1' static-link='{"className":"","href":"https://flipperfile.com/category/developer/","title":"Developer","data-css":"tve-u-19c87e21143","class":""}' link-css-attr="tve-u-19c87e21143"]

[tcb_post_title css='' link='1' rel='0' static-link='{"className":"","href":"https://flipperfile.com/developer-tools/markdown-table-generator/","title":"Markdown Table Generator Online Free","class":""}' target='0' inline='1']

[/tcb_post_list]
Flipper File