pub struct FromUtf8Error { /* fields omitted */ }
A possible error value when converting a String
from a UTF-8 byte vector.
This type is the error type for the from_utf8
method on String
. It
is designed in such a way to carefully avoid reallocations: the
into_bytes
method will give back the byte vector that was used in the
conversion attempt.
The Utf8Error
type provided by std::str
represents an error that may
occur when converting a slice of u8
s to a &str
. In this sense, it's
an analogue to FromUtf8Error
, and you can get one from a FromUtf8Error
through the utf8_error
method.
Basic usage:
let bytes = vec![0, 159];
let value = String::from_utf8(bytes);
assert!(value.is_err());
assert_eq!(vec![0, 159], value.unwrap_err().into_bytes());
Returns a slice of [u8
]s bytes that were attempted to convert to a String
.
Basic usage:
let bytes = vec![0, 159];
let value = String::from_utf8(bytes);
assert_eq!(&[0, 159], value.unwrap_err().as_bytes());
Returns the bytes that were attempted to convert to a String
.
This method is carefully constructed to avoid allocation. It will
consume the error, moving out the bytes, so that a copy of the bytes
does not need to be made.
Basic usage:
let bytes = vec![0, 159];
let value = String::from_utf8(bytes);
assert_eq!(vec![0, 159], value.unwrap_err().into_bytes());
Fetch a Utf8Error
to get more details about the conversion failure.
The Utf8Error
type provided by std::str
represents an error that may
occur when converting a slice of u8
s to a &str
. In this sense, it's
an analogue to FromUtf8Error
. See its documentation for more details
on using it.
Basic usage:
let bytes = vec![0, 159];
let error = String::from_utf8(bytes).unwrap_err().utf8_error();
assert_eq!(1, error.valid_up_to());
Deprecating in 1.33.0
: replaced by Error::source, which can support downcasting
The lower-level cause of this error, if any. Read more
The lower-level source of this error, if any. Read more
Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
Converts the given value to a String
. Read more
type Error = !
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Immutably borrows from an owned value. Read more
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Mutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (get_type_id
)
this method will likely be replaced by an associated static