scripts
This commit is contained in:
@@ -0,0 +1,242 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
|
||||
namespace UnityEngine
|
||||
{
|
||||
// Token: 0x02000290 RID: 656
|
||||
internal class WWWTranscoder
|
||||
{
|
||||
// Token: 0x06002CF9 RID: 11513 RVA: 0x0003F5BC File Offset: 0x0003D7BC
|
||||
private static byte Hex2Byte(byte[] b, int offset)
|
||||
{
|
||||
byte b2 = 0;
|
||||
for (int i = offset; i < offset + 2; i++)
|
||||
{
|
||||
b2 *= 16;
|
||||
int num = (int)b[i];
|
||||
if (num >= 48 && num <= 57)
|
||||
{
|
||||
num -= 48;
|
||||
}
|
||||
else if (num >= 65 && num <= 75)
|
||||
{
|
||||
num -= 55;
|
||||
}
|
||||
else if (num >= 97 && num <= 102)
|
||||
{
|
||||
num -= 87;
|
||||
}
|
||||
if (num > 15)
|
||||
{
|
||||
return 63;
|
||||
}
|
||||
b2 += (byte)num;
|
||||
}
|
||||
return b2;
|
||||
}
|
||||
|
||||
// Token: 0x06002CFA RID: 11514 RVA: 0x0003F654 File Offset: 0x0003D854
|
||||
private static byte[] Byte2Hex(byte b, byte[] hexChars)
|
||||
{
|
||||
return new byte[]
|
||||
{
|
||||
hexChars[b >> 4],
|
||||
hexChars[(int)(b & 15)]
|
||||
};
|
||||
}
|
||||
|
||||
// Token: 0x06002CFB RID: 11515 RVA: 0x0003F684 File Offset: 0x0003D884
|
||||
public static string URLEncode(string toEncode)
|
||||
{
|
||||
return WWWTranscoder.URLEncode(toEncode, Encoding.UTF8);
|
||||
}
|
||||
|
||||
// Token: 0x06002CFC RID: 11516 RVA: 0x0003F6A4 File Offset: 0x0003D8A4
|
||||
public static string URLEncode(string toEncode, Encoding e)
|
||||
{
|
||||
byte[] array = WWWTranscoder.Encode(e.GetBytes(toEncode), WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace, WWWTranscoder.urlForbidden, false);
|
||||
return WWWForm.DefaultEncoding.GetString(array, 0, array.Length);
|
||||
}
|
||||
|
||||
// Token: 0x06002CFD RID: 11517 RVA: 0x0003F6E8 File Offset: 0x0003D8E8
|
||||
public static byte[] URLEncode(byte[] toEncode)
|
||||
{
|
||||
return WWWTranscoder.Encode(toEncode, WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace, WWWTranscoder.urlForbidden, false);
|
||||
}
|
||||
|
||||
// Token: 0x06002CFE RID: 11518 RVA: 0x0003F714 File Offset: 0x0003D914
|
||||
public static string QPEncode(string toEncode)
|
||||
{
|
||||
return WWWTranscoder.QPEncode(toEncode, Encoding.UTF8);
|
||||
}
|
||||
|
||||
// Token: 0x06002CFF RID: 11519 RVA: 0x0003F734 File Offset: 0x0003D934
|
||||
public static string QPEncode(string toEncode, Encoding e)
|
||||
{
|
||||
byte[] array = WWWTranscoder.Encode(e.GetBytes(toEncode), WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace, WWWTranscoder.qpForbidden, true);
|
||||
return WWWForm.DefaultEncoding.GetString(array, 0, array.Length);
|
||||
}
|
||||
|
||||
// Token: 0x06002D00 RID: 11520 RVA: 0x0003F778 File Offset: 0x0003D978
|
||||
public static byte[] QPEncode(byte[] toEncode)
|
||||
{
|
||||
return WWWTranscoder.Encode(toEncode, WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace, WWWTranscoder.qpForbidden, true);
|
||||
}
|
||||
|
||||
// Token: 0x06002D01 RID: 11521 RVA: 0x0003F7A4 File Offset: 0x0003D9A4
|
||||
public static byte[] Encode(byte[] input, byte escapeChar, byte space, byte[] forbidden, bool uppercase)
|
||||
{
|
||||
byte[] array;
|
||||
using (MemoryStream memoryStream = new MemoryStream(input.Length * 2))
|
||||
{
|
||||
for (int i = 0; i < input.Length; i++)
|
||||
{
|
||||
if (input[i] == 32)
|
||||
{
|
||||
memoryStream.WriteByte(space);
|
||||
}
|
||||
else if (input[i] < 32 || input[i] > 126 || WWWTranscoder.ByteArrayContains(forbidden, input[i]))
|
||||
{
|
||||
memoryStream.WriteByte(escapeChar);
|
||||
memoryStream.Write(WWWTranscoder.Byte2Hex(input[i], (!uppercase) ? WWWTranscoder.lcHexChars : WWWTranscoder.ucHexChars), 0, 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
memoryStream.WriteByte(input[i]);
|
||||
}
|
||||
}
|
||||
array = memoryStream.ToArray();
|
||||
}
|
||||
return array;
|
||||
}
|
||||
|
||||
// Token: 0x06002D02 RID: 11522 RVA: 0x0003F878 File Offset: 0x0003DA78
|
||||
private static bool ByteArrayContains(byte[] array, byte b)
|
||||
{
|
||||
int num = array.Length;
|
||||
for (int i = 0; i < num; i++)
|
||||
{
|
||||
if (array[i] == b)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Token: 0x06002D03 RID: 11523 RVA: 0x0003F8B8 File Offset: 0x0003DAB8
|
||||
public static string URLDecode(string toEncode)
|
||||
{
|
||||
return WWWTranscoder.URLDecode(toEncode, Encoding.UTF8);
|
||||
}
|
||||
|
||||
// Token: 0x06002D04 RID: 11524 RVA: 0x0003F8D8 File Offset: 0x0003DAD8
|
||||
public static string URLDecode(string toEncode, Encoding e)
|
||||
{
|
||||
byte[] array = WWWTranscoder.Decode(WWWForm.DefaultEncoding.GetBytes(toEncode), WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace);
|
||||
return e.GetString(array, 0, array.Length);
|
||||
}
|
||||
|
||||
// Token: 0x06002D05 RID: 11525 RVA: 0x0003F914 File Offset: 0x0003DB14
|
||||
public static byte[] URLDecode(byte[] toEncode)
|
||||
{
|
||||
return WWWTranscoder.Decode(toEncode, WWWTranscoder.urlEscapeChar, WWWTranscoder.urlSpace);
|
||||
}
|
||||
|
||||
// Token: 0x06002D06 RID: 11526 RVA: 0x0003F93C File Offset: 0x0003DB3C
|
||||
public static string QPDecode(string toEncode)
|
||||
{
|
||||
return WWWTranscoder.QPDecode(toEncode, Encoding.UTF8);
|
||||
}
|
||||
|
||||
// Token: 0x06002D07 RID: 11527 RVA: 0x0003F95C File Offset: 0x0003DB5C
|
||||
public static string QPDecode(string toEncode, Encoding e)
|
||||
{
|
||||
byte[] array = WWWTranscoder.Decode(WWWForm.DefaultEncoding.GetBytes(toEncode), WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace);
|
||||
return e.GetString(array, 0, array.Length);
|
||||
}
|
||||
|
||||
// Token: 0x06002D08 RID: 11528 RVA: 0x0003F998 File Offset: 0x0003DB98
|
||||
public static byte[] QPDecode(byte[] toEncode)
|
||||
{
|
||||
return WWWTranscoder.Decode(toEncode, WWWTranscoder.qpEscapeChar, WWWTranscoder.qpSpace);
|
||||
}
|
||||
|
||||
// Token: 0x06002D09 RID: 11529 RVA: 0x0003F9C0 File Offset: 0x0003DBC0
|
||||
public static byte[] Decode(byte[] input, byte escapeChar, byte space)
|
||||
{
|
||||
byte[] array;
|
||||
using (MemoryStream memoryStream = new MemoryStream(input.Length))
|
||||
{
|
||||
for (int i = 0; i < input.Length; i++)
|
||||
{
|
||||
if (input[i] == space)
|
||||
{
|
||||
memoryStream.WriteByte(32);
|
||||
}
|
||||
else if (input[i] == escapeChar && i + 2 < input.Length)
|
||||
{
|
||||
i++;
|
||||
memoryStream.WriteByte(WWWTranscoder.Hex2Byte(input, i++));
|
||||
}
|
||||
else
|
||||
{
|
||||
memoryStream.WriteByte(input[i]);
|
||||
}
|
||||
}
|
||||
array = memoryStream.ToArray();
|
||||
}
|
||||
return array;
|
||||
}
|
||||
|
||||
// Token: 0x06002D0A RID: 11530 RVA: 0x0003FA6C File Offset: 0x0003DC6C
|
||||
public static bool SevenBitClean(string s)
|
||||
{
|
||||
return WWWTranscoder.SevenBitClean(s, Encoding.UTF8);
|
||||
}
|
||||
|
||||
// Token: 0x06002D0B RID: 11531 RVA: 0x0003FA8C File Offset: 0x0003DC8C
|
||||
public static bool SevenBitClean(string s, Encoding e)
|
||||
{
|
||||
return WWWTranscoder.SevenBitClean(e.GetBytes(s));
|
||||
}
|
||||
|
||||
// Token: 0x06002D0C RID: 11532 RVA: 0x0003FAB0 File Offset: 0x0003DCB0
|
||||
public static bool SevenBitClean(byte[] input)
|
||||
{
|
||||
for (int i = 0; i < input.Length; i++)
|
||||
{
|
||||
if (input[i] < 32 || input[i] > 126)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x04000899 RID: 2201
|
||||
private static byte[] ucHexChars = WWWForm.DefaultEncoding.GetBytes("0123456789ABCDEF");
|
||||
|
||||
// Token: 0x0400089A RID: 2202
|
||||
private static byte[] lcHexChars = WWWForm.DefaultEncoding.GetBytes("0123456789abcdef");
|
||||
|
||||
// Token: 0x0400089B RID: 2203
|
||||
private static byte urlEscapeChar = 37;
|
||||
|
||||
// Token: 0x0400089C RID: 2204
|
||||
private static byte urlSpace = 43;
|
||||
|
||||
// Token: 0x0400089D RID: 2205
|
||||
private static byte[] urlForbidden = WWWForm.DefaultEncoding.GetBytes("@&;:<>=?\"'/\\!#%+$,{}|^[]`");
|
||||
|
||||
// Token: 0x0400089E RID: 2206
|
||||
private static byte qpEscapeChar = 61;
|
||||
|
||||
// Token: 0x0400089F RID: 2207
|
||||
private static byte qpSpace = 95;
|
||||
|
||||
// Token: 0x040008A0 RID: 2208
|
||||
private static byte[] qpForbidden = WWWForm.DefaultEncoding.GetBytes("&;=?\"'%+_");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user