{{newin (日本語)|[[11.0 (日本語)|11.0]]|110|type=関数}}
バイト文字列、または Data にある Lua 値をアンパック (デシリアライズ) します。

この関数の動作は Lua 5.3 の [https://www.lua.org/manual/5.3/manual.html#pdf-string.unpack string.unpack] 関数と同じです。
 
== 関数 ==
=== 概要 ===
<source lang="lua">
v1, ..., index = love.data.unpack( format, datastring, pos )
</source>
=== 引数 ===
{{param (日本語)|string|format|値のパック方法を決めるための文字列です。ルールは Lua 5.3 の [https://www.lua.org/manual/5.3/manual.html#6.4.2 string.pack] 関数で採用されている書式文字列に従います。}}
{{param (日本語)|string|datastring|パック処理 (シリアライズ) をしたデータから構成される文字列。}}
{{param (日本語)|number|pos (1)|文字列の読み取り開始位置。負数値を指定すると文字列の末尾から相対的に読み取ります。}}
=== 返値 ===
{{param (日本語)|value|v1|アンパック (デシリアライズ) 対象の第一値 (number, boolean, または string)。}}
{{param (日本語)|value|...|アンパック (デシリアライズ) 対象の値を続けて返します。}}
{{param (日本語)|number|index|インデックスにおいてデータ文字列の先頭から読み飛ばしを行うバイト数です。}}

== 関数 ==
=== 概要 ===
<source lang="lua">
v1, ..., index = love.data.unpack( format, data, pos )
</source>
=== 引数 ===
{{param (日本語)|string|format|値のパック方法を決めるための文字列です。ルールは Lua 5.3 の [https://www.lua.org/manual/5.3/manual.html#6.4.2 string.pack] 関数で採用されている書式文字列に従います。}}
{{param (日本語)|Data|data|パック処理 (シリアライズ) をしたデータから構成される Data オブジェクト。}}
{{param (日本語)|number|pos (1)|1 ベースのインデックスにおいて Data の読み取り開始位置。
負数値を指定すると Data オブジェクトの末尾から相対的に読み取ります。}}
=== 返値 ===
{{param (日本語)|value|v1|アンパック (デシリアライズ) 対象の第一値 (number, boolean, または string)。}}
{{param (日本語)|value|...|アンパック (デシリアライズ) 対象の値を続けて返します。}}
{{param (日本語)|number|index|1 ベースのインデックスにおいて Data の先頭から読み飛ばしを行うバイト数です。}}

== 注釈 ==
Lua 5.1 では 2 の 52 乗以上の整数値を表現できないため、この範囲を超える number 型による値のアンパック処理には対応していません。 

== 関連 ==
* [[parent::love.data (日本語)]]
* [[love.data.pack (日本語)]]
* [[love.data.getPackedSize (日本語)]]
[[Category:Functions (日本語)]]
{{#set:Description=バイト文字列、または Data にある Lua 値をアンパック (デシリアライズ) します。}}
== そのほかの言語 ==
{{i18n (日本語)|love.data.unpack}}