我正在为我的游戏使用平铺地图编辑器,我用 C++ 编程,在我使用原始 XML .tmx 文件(没有 base64 和 zlib 压缩)为我的关卡实现加载方法之后,我想现在用 base64 来做。
这是我的问题/问题:平铺地图编辑器如何转换这样的数据结构:
<tile gid="25"/>
<tile gid="25"/>
<tile gid="25"/>
<tile gid="25"/>
<tile gid="25"/>
Run Code Online (Sandbox Code Playgroud)
到像这样的 base64 编码字符串:
GQAAABkAAAAZAAAAGQAAABkAAAA=
Run Code Online (Sandbox Code Playgroud)
?
我想我需要了解这一点,以便为此实施加载方法。我想知道如何知道另一个磁贴的 ID 开始的位置以及为什么编码字符串与我将 ID 复制到https://www.base64encode.org/时得到的字符串不匹配。
我有一张 Base64 格式的图像。我需要在 Base64 编码图像的图片单元格中显示。
有没有办法将字符串转换为二进制 base64?我看过很多参考资料,但最终没有奏效。例如我有这个输入文件:
<RootElement xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Data>
<Binary>
<RawData>This element should convert string to binary base64.</RawData>
</Binary>
</Data>
</RootElement>
Run Code Online (Sandbox Code Playgroud)
我需要生成:
<RootElement xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Data>
<Binary>
<RawData>VGhpcyBlbGVtZW50IHNob3VsZCBjb252ZXJ0IHN0cmluZyB0byBiaW5hcnkgYmFzZTY0Lg==</RawData>
</Binary>
</Data>
Run Code Online (Sandbox Code Playgroud)
我创建了一个 xslt 并使用了我在网上看到的命名空间:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dp="http://www.datapower.com/extensions">
<xsl:output method="xml" version="1.0" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="RawData">
<xsl:element name="RawData">
<xsl:value-of select="dp:encode(., 'base-64')"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
谢谢你。
将图像上传到服务器,图像来自,然后我想通过ajax将图像发布到服务器,服务器端使用pythonflask框架,它需要base64编码格式,问题是我如何使用javascript将图像转换为base64格式。
$('.img-upload-btn').click(function(event) {
$("#img-upload").click();
});
$('#img-upload').on('change', function(event) {
event.preventDefault();
var img = $("#img-upload")[0].files[0];
console.log(toDataUrl(img.name));
var img_data = {
"spec_id": 212,
"file": img
};
console.log(img);
$.ajax({
url: 'http://10.0.0.75:5000/api/check_specification',
type: 'POST',
dataType: 'json',
contentType: "application/json; charset=utf-8",
success: function(data) {
alert(data);
},
failure:function(errorMsg) {
alert(errorMsg);
}
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn-search full-width img-upload-btn">upload-img</button>
<input type="file" id="img-upload" >Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 android.util.Base64 对字符串进行编码和解码,但它给出了一个糟糕的 base-64 错误。
String str = "EOKF36syRBtB11VgyChkNjc1HxRrajT7XXaxZfnVzPkV57K3b9yqkS284Ovb9uWzXgGeY2bxA3IySGfdOHiPAQ==F/v6hcTiU1sd975XHfDsz8o0rboujM77n7KwRMidobOLbo5ghUT/IFcxElUc8CirdZxaCaS3zs/CfRKRsXwbFNYd";
Base64.decode(str,Base64.NO_WRAP);
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用以下标志(NO_CLOSE、DEFAULT、NO_PADDING、URL_SAFE)解码字符串,但它给出了相同的错误。
请帮我解决我的问题。
我目前正在用 C# 做一个程序。当我尝试将字符串从 sha256 传递到 base64 时,我意识到它没有正确编码。
例如,给定 sha256
cd69ef0284bba33bc0b320e6479c2da2d411a5e46af060d8639f0e0bfc24f26d
Run Code Online (Sandbox Code Playgroud)
我的代码产生
Y2Q0Q2OUVGMDI4NEJCQTMzQkMwQjMyMEU2NDc5QzJEQTJENDExQTVFNDZBRjA2MEQ4NjM5RjBFMEJGQzI0RjI2RA==
Run Code Online (Sandbox Code Playgroud)
我期待得到的是
zWnvAoS7ozvAsyDmR5wtotQRpeRq8GDYY58OC/wk8m0
Run Code Online (Sandbox Code Playgroud)
为什么编码的字符串如此不同,我错过了什么?
这是我正在使用的代码
string t1 ="cd69ef0284bba33bc0b320e6479c2da2d411a5e46af060d8639f0e0bfc24f26d";
var t2= System.Text.Encoding.GetEncoding(1252).GetBytes(t1);
string t3= System.Convert.ToBase64String(t2);
Run Code Online (Sandbox Code Playgroud) 我正在尝试上传动画 gif 作为用户头像。这些图像通过javascript转换为base64,然后使用图像干预上传。
$img = Image::make(file_get_contents($file));
$mime = $img->mime();
if ($mime == 'image/jpeg')
$ext= '.jpg';
elseif ($mime == 'image/png')
$ext= '.png';
elseif ($mime == 'image/gif')
$ext= '.gif';
elseif($mime == 'image/x-icon')
$ext = '.ico';
elseif($mime == 'image/bmp')
$ext = '.bmp';
else {
$ext = '.jpg';
}
$name = time().$ext;
$path = public_path("images/$controller");
File::isDirectory($path) or File::makeDirectory($path);
if(property_exists($field, 'size') && !$ext=='.gif') {
$field->size = explode('*',$field->size);
if($img->resize($field->size[0], $field->size[1])->save("$path/$name")) {
$data[$key] = $name;
} else {
$data[$key] = null;
}
} else {
if($img->save("$path/$name")) { …Run Code Online (Sandbox Code Playgroud) 我正在尝试将缓冲区编码为base64字符串,但是它只是将数组复制粘贴到字符串中而不进行编码。
我要编码的缓冲区是:
Uint8Array(16)
0:120
1:207
2:91
3:215
4:169
5:206
6:208
7:145
8:250
9:19
10:191
11:254
12:154
13:209
14:47
15:122
缓冲区:ArrayBuffer {byteLength:16}
byteLength:16
byteOffset:0
长度:16
:Uint8ArrayPrototype {…}
我试图使用buffer.toString('base64'),就像您在下面看到的那样,但是它不起作用
我为此使用的代码如下:
var buf = Buffer.from([18, 5, 2, 7, 32, 12, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
var aesCbc = new aesjs.ModeOfOperation.cbc(key);
var encryptedBytes = aesCbc.encrypt(buf);
console.log(encryptedBytes)
var string64 = encryptedBytes.toString('base64');
console.log(string64)
Run Code Online (Sandbox Code Playgroud)
我期望这样的字符串:
eAnguAGneSD + Y / jOpikpnQ ==(这只是base64字符串的示例)
但结果是:
字符串:120,207,91,215,169,206,208,145,250,19,191,254,154,209,47,122
谢谢你的时间 !
我想在Flutter中的Base64Url中编码以下字符串,然后在Dart服务器上对其进行解码。
"username:password"
Run Code Online (Sandbox Code Playgroud)
我怎么做?以及如何在Base64中做到这一点?
我已将此URL加密为base64,这是一个动画QRCode。
我如何在TWebBrowser(或TImage)中加载它?提前致谢。
编辑:
这是我的尝试,但没有成功:
uses
IdHTTP, IdSSLOpenSSL, GIFImg, ClipBrd;
type
TForm1 = class(TForm)
Button1: TButton;
Image1: TImage;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function GetStrFromClipbrd: string;
begin
if Clipboard.HasFormat(CF_TEXT) then
Result := Clipboard.AsText
else
begin
ShowMessage('There is no text in the Clipboard!');
Result := '';
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
MS: TMemoryStream;
IdHTTP1: TIdHTTP;
GIF: TGIFImage; …Run Code Online (Sandbox Code Playgroud)