string转long
时间: 2023-11-25 13:08:05 浏览: 77
在C++中可以使用 `std::stol()` 函数将字符串转换为 long 类型。例如:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "123456789";
long num = std::stol(str);
std::cout << "num = " << num << std::endl;
return 0;
}
```
输出:
```
num = 123456789
```
如果字符串超过 long 类型的范围,将会抛出 `std::out_of_range` 异常。如果字符串格式不正确,将会抛出 `std::invalid_argument` 异常。因此,在使用 `std::stol()` 函数时,需要对异常进行处理。
相关问题
String 转Long
要将String类型转换为Long类型,可以使用Long的parseLong方法或者Long的valueOf方法。如果要转换的String类型数据只包含数字,可以使用parseLong方法,它会返回Long的包装类型。例如,可以使用以下代码将String类型的数据转换为Long类型:
String s = "123";
Long l = Long.parseLong(s);
如果要转换的String类型数据包含小数点或其他非数字字符,可以使用valueOf方法,它会返回long型。例如,可以使用以下代码将带小数点的String类型数据转换为Long类型:
String s = "11.00";
long l = Long.valueOf(Double.valueOf(s).intValue());
需要注意的是,Long类型的最小值为Long.MIN_VALUE=-9223372036854775808,如果要转换的String类型数据小于这个值,会报错。
#### 引用[.reference_title]
- *1* *2* [java中long和string互转](https://blog.csdn.net/sunzixiao/article/details/125261459)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [Java中String转Long方式及注意事项](https://blog.csdn.net/qq_43842093/article/details/123886681)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
string 转long
可以使用Long.parseLong(String s)方法将字符串转换为long类型。例如:
String s = "123456789";
long l = Long.parseLong(s);
System.out.println(l); // 输出:123456789
需要注意的是,如果字符串无法转换为long类型,会抛出NumberFormatException异常。
阅读全文