go byte 转string 去掉 转义字符
时间: 2023-11-21 17:06:48 浏览: 142
在 Go 中,通过使用 `strconv.Unquote()` 函数可以将字符串中的转义字符转换为实际的字符,例如:
```
package main
import (
"fmt"
"strconv"
)
func main() {
str := "hello\\nworld"
unquoted, err := strconv.Unquote(`"` + str + `"`)
if err != nil {
panic(err)
}
fmt.Println(unquoted)
}
```
输出:
```
hello
world
```
其中,`"` 符号是必须的,因为 `Unquote()` 函数要求传入的字符串必须是双引号括起来的字符串。
相关问题
go byte 转string 去掉 转义字符\a
可以通过先将字节切片转换为字符串,再使用 strings.Replace() 函数去掉 \a 转义字符。
示例代码如下:
```go
package main
import (
"fmt"
"strings"
)
func main() {
b := []byte{72, 101, 108, 108, 111, 44, 32, 87, 111, 114, 108, 100, 7, 33}
s := string(b)
s = strings.Replace(s, "\a", "", -1)
fmt.Println(s)
}
```
输出结果为:
```
Hello, World!
```
其中,`-1` 表示将所有的 \a 转义字符替换掉。如果你只想替换第一个出现的 \a,就将 `-1` 改为 `1`。
java代码中对含有&的String字符串进行转义的代码
敏感信息的字符串进行加密处理的示例:
1. 使用Java的加密库进行加密处理:
```
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
public class EncryptUtil {
private static final String ENCRYPT_ALGORITHM = "AES";
private static final String ENCRYPT_KEY = "mysecretkey";
public static String encrypt(String input) throws Exception {
KeyGenerator keyGenerator = KeyGenerator.getInstance(ENCRYPT_ALGORITHM);
keyGenerator.init(128);
SecretKey secretKey = keyGenerator.generateKey();
Cipher cipher = Cipher.getInstance(ENCRYPT_ALGORITHM);
cipher.init(Cipher.ENCRYPT_MODE, secretKey);
byte[] encryptedBytes = cipher.doFinal(input.getBytes());
return new String(encryptedBytes);
}
public static String decrypt(String encryptedInput) throws Exception {
KeyGenerator keyGenerator = KeyGenerator.getInstance(ENCRYPT_ALGORITHM);
keyGenerator.init(128);
SecretKey secretKey = keyGenerator.generateKey();
Cipher cipher = Cipher.getInstance(ENCRYPT_ALGORITHM);
cipher.init(Cipher.DECRYPT_MODE, secretKey);
byte[] decryptedBytes = cipher.doFinal(encryptedInput.getBytes());
return new String(decryptedBytes);
}
}
```
使用示例:
```
String input = "my sensitive information";
String encryptedInput = EncryptUtil.encrypt(input);
String decryptedInput = EncryptUtil.decrypt(encryptedInput);
System.out.println("Input: " + input);
System.out.println("Encrypted Input: " + encryptedInput);
System.out.println("Decrypted Input: " + decryptedInput);
```
2. 使用Base64编码进行加密处理:
```
import java.util.Base64;
public class EncryptUtil {
public static String encrypt(String input) {
byte[] encryptedBytes = Base64.getEncoder().encode(input.getBytes());
return new String(encryptedBytes);
}
public static String decrypt(String encryptedInput) {
byte[] decryptedBytes = Base64.getDecoder().decode(encryptedInput.getBytes());
return new String(decryptedBytes);
}
}
```
使用示例:
```
String input = "my sensitive information";
String encryptedInput = EncryptUtil.encrypt(input);
String decryptedInput = EncryptUtil.decrypt(encryptedInput);
System.out.println("Input: " + input);
System.out.println("Encrypted Input: " + encryptedInput);
System.out.println("Decrypted Input: " + decryptedInput);
```