Generally I use gpg on a Mac and never ran into this issue before. However, I recently was using gpg inside PowerShell on Windows and was doing what was supposed to be a simple operation: exporting a private key. I used the following (standard) command to export the private key with ASCII armor:
gpg --export-secret-key --armor 3C4A7E82 > C:\Users\4n68r\temp\keys.asc
But when I went to import this key file into iPGMail (an iPhone/iPad app for sending and decrypting PGP encoded messages), it gave the error, “No PGP messages found” and wouldn’t find the keys. I reached out to iPGMail support on Twitter and Wyllys Ingersoll responded immediately, continuing the conversation via email. He had me send him a test private key file and he realized that for whatever reason it was not encoded in UTF-8 or ASCII. I observed that it was encoded UCS-2 little endian.
Why Windows PowerShell kicked this file out in UCS-2 little endian is beyond me. But at least it was an easy fix and iPGMail support was awesome. Anyways, I had no luck when Googling this issue before contacting support, so hopefully anyone else who has this issue finds this and is able to fix the problem simply by changing the encoding on the exported keys file.
And for anyone curious, the key shown in the image is the garbage test key I created—knock yourself out trying to use it for something useful. The hex sequence in the command line is not part of my actual public key, either. Sorry for spoiling your fun.