将base64字符串解码为fi

2024-03-28 17:04:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个从设备接收base64字符串的程序。这个字符串是一个经过编码的json文件,我想这样解释它。在

如果我这样做(使用python base64库):

decoded = base64.decodestring(base64str) 
print(decoded) 

然后它会输出一堆胡言乱语,因为原始数据不是一个字符串,而是一个文件。在

我可以看到文件名之间的胡言乱语,所以我想我收到的数据是正确的,但需要直接将其解释为文件而不是字符串。在

我四处找了很多次,都没能成功。尝试将字符串保存到文件中显然只是将所有胡言乱语保存到一个文件中

如果你能帮我做这件事,我会很感激的!在

64进制字符串:

^{pr2}$

“解码”字符串:

!A ux o3d3xx.jsonUT   �Ymo�8������P ��'��6RyY�{�ݮ�I m��LӮ��-�̨hp�f� X�[�/uK�G���#A;d����p΅l[r����L��3�3�:���6�s��/�������J�ڠg�/?k� ���7h2�ճ6< ��\���|�`d�9�!�������:v�?siB��/�/�
                                  /��_�����K,�`r�d4����{ J�                                                      � `��#��{4J�    h#�p�$��s ��ԇY��\����o�J�:��6�<wH�xR��{,����           ��,�u��,�?J7W|@� i�哉K�$9����(�W��qZ���-��cu��6s!��P���Y�6G����R�v�-;́B��ĭ�Vܯ7��,��y�,�ψ@1�zH~ ��8~.��'Q��}����6��H���ZV(j7�`����漏t�(������:�S�^��o^t��fl?I��9N�,�G���A�ŷ ��a���\�����Nr���p�]ڍ��� ��R�,��m@��S�D��9����uZ�4�,�r(,�E�֫hCv@C�FIX�:                         ���Z�0�                                                                �z�fI /%��5�                                       �U��o�s�'R�p�yT��h.h8�.&�x��Q/��_���
      �q�_�-�                                                                   -���`F���)F]� ���� ��tXU�*�`M�2�rBd2�DFx��������3�A�h4jf�aKΩ�l3�:�d���+��!�4��z�6�Y8�N����u��$#^���0:q��#LHay�F��%-�I�j^%M��THFc��uW}�;n}nuGc�S�k��O���Y���[��V3�@)5O*��/�9h՛O�vo0
                  ⠞�ߴ�Q�a�~��|R�a�^�<�Ƈ6��+ō�ڠ''�1s�+5��+��     ���                �݀�7p���(����Q�H?<�DA��Q�]EV�I'P����T�>��`j� c       4�A��W>%�ؕ�ޭ7�,7[�                                                     &���u?�LRz�~�q8<�����ԉ.�}� �.Q�Y\H�Tѿ+�K�R �0#��fZ�fv���#W�9��ZM`�KV<���?u�M��iʅGԫ#�!�@��X�1z�|"V1�               ��ivP���. !�C.�!�                                                     g#d��9$UhR�z�Z`� �O�X�����a�ld��}�"�
                 ({UxC��+��+�-构�=> ����g*�8xK���\�xY�3q4$/�ɅZaO�y��R�/2���>�\
=��g��h>0D���P���i�p�@�F���: f�R��'@V�K=a�����M�z[�A�n���b�f���>Oj�A�4��i��r�(D�Gim&�q�(Vi\o]�J���Lש7�xE���t��k�V��J���O�À���L,�&����uJ�qk��MQ/Vn���;��Ye��nF� ��!!��f����_��
                                                                                                                                                      �?7������P�_ A!�_ A ��o3d3xx.jsonUTuxPKFy

希望有一种方法可以在不转换字符串的情况下提取和保存文件。在


Tags: 文件数据字符串程序json编码原始数据文件名
1条回答
网友
1楼 · 发布于 2024-03-28 17:04:19

当我这样做时,print(decoded[:20])我实际上看到的是:

b'PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x00'

这个PK\x03\x04zip file的“幻数”。所以就这样对待吧。或者将其保存到名为“的文件中”我的数据.zip“然后像提取任何zip文件一样提取它,或者用Python处理它,例如:

^{pr2}$

对于您的数据,首先打印文件名“o3d3xx.json文件“然后是数据:

{'Applications': [{'Description': '',
                   'ImagerConfiguration': [{'AutoExposureMaxLongShortFactor': 50,
                                            'AutoExposureMinLongShortFactor': 2,


          (... lots and lots and lots of data ...)


             'StaticIPv4SubNetMask': '255.255.255.0',
             'UseDHCP': False}}

相关问题 更多 >