Я хочу отправить содержимое файла как часть HTTP-запроса с помощью Apache HttpClient, и я не мог понять, как передать содержимое файла в теле запроса.




Вы не указали формат ....
Скорее всего, вы хотите отправить запрос POST, содержимое будет MIME-типа multipart / form-data. Это имитирует то, что браузер отправляет из элемента формы <INPUT type = "file" ...>. Это требует довольно сложного синтаксического анализа на стороне сервера для извлечения нескольких частей из тела и правильного извлечения данных файла из других полей (если таковые имеются). К счастью, Commons-fileupload справляется с этим отлично. Первый ответ относительно FilePart совершенно правильный.
В качестве альтернативы вы можете просто опубликовать необработанное содержимое файла в качестве тела запроса, используя InputStreamRequestEntity. Это может быть намного проще, если вы пишете свою собственную серверную часть для приема данных. На стороне сервера достаточно просто передать поток InputStream запроса на диск. Я использую эту технику для загрузки с помощью Google Gears.