2011-03-18 61 views
17

我使用標準輸入和輸出將2個base64字符串從一個應用程序傳遞到另一個應用程序。將它們分開的最好方法是什麼,以便在其他應用程序中將它們作爲兩個單獨的字符串來獲取?我用一個簡單的逗號,將它們分開思考,然後只用分離兩個base64字符串的最佳方法

string[] s = output.Split(',');

其產量,我從標準輸出讀取的數據。

實施例與逗號:

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCv5E5Y0Wrad5FrLjeUsA71Gipl3mhjIuCw1xhj jDwXN87lIhpE32UvItf + mvp8flQ + fhi5H0PditDCzUFg8lXuiuOXxelLWEXA8hs7jc + 4zzR5ps3R fOv3M6H8K5XGkwWLhVNQX47sAGyY/43JdbfX7 + FsYUFeHW/wa2yKSMZS3wIDAQAB ,HNJpFQyeyJoVbeEgkw/WNtzR0JTPIa1hlK1C8LbFcVcJfL33ssq3gbzi0zxn0n2WxBYKJZj2Kqbs lVrmFbQJRgvq4ZNF4F8z + xjL9RVVE/rk5x243c3Szh05Phzx + IUyXJe6GkITDmsxcwovvzSaGhzU 3qQkNbhIN0fVyynpg0Kfm0WytuW71ku1eq45ibcczgwQLRJX1GKzC9wH7x/V36i6SpyrxZ/+ uCIL 4QgnKt6x4QG7Gfk3Msam6h6JTFdzkeHJ jq6JzeapdQn5LxeMY0jLGc4cadMCvy/Jdrcg02pG2wOO /gJT77xvX + d1igi + BQ/YpFlwXI0BIuRwMAeLojmZdRYjJ + LY69auxgpnQvSF4A + Wc6Jo8m1pzzHB yQvA8KyiRwbyijoBOsg + oK18UPFWeJ5hE3e +8升/ WSEcii + oPgXyXTnK + seesGdOPeem3HukNyIps L/StHZEkzeJFTr8LIB9HLqDikYU2mQjTiK5cIExoyy2Go + 0ndL84rCzMZAlfFlffocL9x + SGyeer M1mxmyDtmiQfDphEZixHOylciKUhWR00dhxkVRQ4Q9LYCeyGfDiewL + rm5se/ePCklWtTGycV9HM H5vYLhgIkf5W6 + XcqcJlE6vp4WWxmKHQYqRAdfW5MYWskx7jBDTMV2MLy7N6gQRQa/OpK8ruAbVf MwWP1sGyhAxgrw/UxTH1tW498WI5JtQR3oub3 + Uj5AqydhwzQtWM58WfVQXdv2bFZmGH7d9A + C95 DQ8QXKrV7Ot/wVq5KKLgpJy8iMe/G/iyXOmQhkLnZ3qvBaIJd + E2ZIVPty6XGMwgC4JebArr + A6V CB/SO + VR + eZmXLln/W ==

回答

24

您只需使用不是有效的Basc64字符的分隔符。 逗號不是base64字符,因此您可以使用。

Base64字符是[0-9a-zA-Z/=+](所有數字,大寫,小寫,正斜槓加號和等號)。

+3

不要忘記屬於base64字符的'+'和'/'。 – 2011-03-18 10:24:30

+0

你是對的!只是檢查並添加。 :) – Aliostad 2011-03-18 10:25:51

+0

感謝您的確認,我在正確的軌道上。 – hs2d 2011-03-18 10:34:41

2

這似乎是一個很好的解決方案。逗號不能是base64 index table的一部分,因此它是安全的分隔符。

-2

你可以用一些XML來包裝它。 CDATA元素是完美的。

+2

我認爲這會有點矯枉過正,但謝謝你的建議! – hs2d 2011-03-18 10:35:17

+1

像[那](http://thedailywtf.com/articles/Oh%2c-XML)?或者像[this](http://thedailywtf.com/articles/Extensible-XML)與[that](http://thedailywtf.com/articles/XMLd-XML)?所有的事情都考慮到了,XML格式的base64 XML格式的base64在XML中聽起來像是一種很好的技術... – 2017-04-13 17:56:26

相關問題