2014-08-29 178 views
-1

我有一个字符串XML file,我需要base64解码。 但是,它看起来像字符串中有一些无效字符提取Base64字符串

我试着编写一些代码来删除任何无效字符,然后重新打包,但看起来我的源数据中可能有一些无效的不可见字符。

所以,我想到了最好的方法,因为我知道有效的base64字符只是有一个函数来提取所有有效字符,这样每个无效字符将被清除。

有没有一种快速的方法来测试这个理论?

我的另一个问题是关于自身的base64, 研究看来,虽然A-Z,a-z,0-9是有效的base64字符剩下的就取决于文件编码之后。

是否有可能我的文件正在使用其他base64方案?

当我在公共A-Z,a-z,0-9上扫描我的文件时,我发现=位于文件中,而不仅仅是填充。我试图删除这些并重新加载,但我似乎仍然有无效的字符。

由于我无法发布我的base64编码字符串,因此这是更常见的问题。


更新问题 此更新是关于我原来的问题的第一部分,

如果我有一串说1000个随机字符,而且我想删除每一个角色,是不是在一套。假设我的集合是“A”,“B”,“C”,“D”,E“,”F“,”G“。什么是最简单(快速,无循环)的方式来删除所有不在集合中的字符?

+0

尝试使用自定义例程来解码base64,至少您会看到哪里/哪里出了问题。 – 2014-08-29 13:00:53

+0

好主意。我会试一试,看看它会把我带到哪里。谢谢阿德里安娜。 – CodeMusic 2014-08-29 13:03:25

+0

对于更新的问题:您必须循环输入,然后最快的方法是简单地_do不允许您的允许集外复制字符。 c = a.Where(x => b.Contains(x)) – 2014-08-29 13:29:55

回答

0

事实证明,我的文件中没有任何无效字符,它看起来像是更具体的文件大小问题。

当我将数据分成更小的部分时,将字节数组填充,转换并合并为一个可读的pdf文件。

有关详细信息,包括我把解决这个问题的步骤/得出这样的结论,看到这个线程: Convert.FromBase64String Strange Issue

感谢这导致这个建议。