Module string

A UTF-8–encoded, growable string.

This module contains the String type, the ToString trait for converting to strings, and several error types that may result from working with Strings.

Examples

There are multiple ways to create a new String from a string literal:

let s = "Hello".to_string();

let s = String::from("world");
let s: String = "also this".into();

You can create a new String from an existing one by concatenating with +:

let s = "Hello".to_string();

let message = s + " world!";

If you have a vector of valid UTF-8 bytes, you can make a String out of it. You can do the reverse too.

let sparkle_heart = vec![240, 159, 146, 150];

// We know these bytes are valid, so we'll use `unwrap()`.
let sparkle_heart = String::from_utf8(sparkle_heart).unwrap();

assert_eq!("đŸ’–", sparkle_heart);

let bytes = sparkle_heart.into_bytes();

assert_eq!(bytes, [240, 159, 146, 150]);

Structs

Traits

Type Aliases