WriteStream linia 318, TSInfoFiles.pp
public procedure WriteStream(const AAttrPath: String; AStream: TStream; ASize: UInt32; AFormat: TFormatStream = fs32BytesPerLine);
Metoda służąca do zapisu dowolnego strumienia do atrybutu.
parametry | |
---|---|
AAttrPath | łańcuch znaków, zawierający ścieżkę lub nazwę atrybutu |
AStream | instancja klasy strumienia do zapisu do atrybutu |
ASize | rozmiar strumienia do zapisu |
AFormat | enum typu TFormatStream, określająca ilość zapisywanych bajtów w jednej linii wartości atrybutu |
Służy do zapisu strumienia z parametru AStream do atrybutu, do którego ścieżka lub nazwa przekazana jest w argumencie AAttrPath. Długość strumienia do zapisu zawarta jest w parametrze ASize. Ilość linii wartości dla danego strumienia uzależniona jest od parametru AFormat typu TFormatStream, który może przyjmować jedną z czterech wartości informujących o ilości bajtów przypadających na każdą linię.
format | wartość po konwersji |
---|---|
strumienia: "format plików Tree Structure Information" (41 bajtów) | |
fs8BytesPerLine | '666F726D61742070' '6C696BC3B3772054' '7265652053747275' '637475726520496E' '666F726D6174696F' '6E' |
fs16BytesPerLine | '666F726D617420706C696BC3B3772054' '7265652053747275637475726520496E' '666F726D6174696F6E' |
fs32BytesPerLine | '666F726D617420706C696BC3B37720547265652053747275637475726520496E' '666F726D6174696F6E' |
fs64BytesPerLine | '666F726D617420706C696BC3B37720547265652053747275637475726520496E666F726D6174696F6E' |
Do konwersji strumienia na łańcuch znaków wykorzystywana jest metoda BufferToValue.
W przypadku, gdy atrybut o podanej ścieżce lub nazwie nie istnieje — metoda próbuje go utworzyć, razem z nieistniejącymi węzłami (stanowiącymi do niego pełną ścieżkę). Jeżeli atrybut istnieje lub został poprawnie utworzony, wpisywana jest przekonwertowana na łańcuch wartość. Natomiast jeśli tryb tylko do odczytu jest włączony, wywoływany jest wyjątek klasy ETSInfoFileException.
zobacz też: