String thisurl ="http://songolum.com/file/ppdVkTxqhwcJu-CAzCgtNeICMi8mHZnKQBgnksb5o2Q/Ed%2BSheeran%2B-%2BPerfect.mp3?r=idz&dl=311&ref=ed-sheran-perfect";
url = null;
try {
url = new URL(thisurl);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
try {
// urlConnection.setRequestProperty("Transfer-Encoding", "chunked");
urlConnection.setRequestProperty("Accept-Encoding", "identity");
urlConnection.setDoOutput(true);
urlConnection.setChunkedStreamingMode(0);
int l=0;
InputStream in = new BufferedInputStream(urlConnection.getInputStream());
while(in.read()!=-1)
{
l=l+in.read();
}
System.out.println("Content-length" +l);
で見つかったと私はそれが**コンテンツの長さは、私は他のソフトウェアでチェック**このURL
あなたは 'in.read()'を2回呼びます。読み取られた量の1つのみを加算します。 whileループをリファクタリングする必要があります。ストリームの処理に関する例を検索してみてください – Doomsknight
@Doomsknightあなたは私にアンドロイドで新しい例を表示できますか?ありがとう – user2037091
do { ln = in.read(); if(ln!= - 1) l = l + ln; } while(ln!= - 1); – user2037091