ASCII - это файл TEXT, поэтому вы должны использовать Readers для чтения. Java также поддерживает чтение из двоичного файла с помощью InputStreams . Если прочитанные файлы огромны, вы можете использовать BufferedReader поверх FileReader , чтобы улучшить производительность чтения.
Пройдите через в этой статье о том, как использовать Reader
Я также рекомендую вам скачать и прочитать эту замечательную (но бесплатную) книгу под названием Мышление на Java
В Java 7:
new String (Files.readAllBytes (...)) или Files.readAllLines (...)
В Java 8:
Это доступно с помощью функции SQLite last_insert_rowid()
:
Функция last_insert_rowid () возвращает ROWID последнего вставка строки из соединения с базой данных, которое вызывает функцию. Функция last_insert_rowid () SQL является оболочкой вокруг функции интерфейса sqlite3_last_insert_rowid () C / C ++.
blockquote>PHP
Версия PHP / привязка этой функции -
sqlite_last_insert_rowid()
:Возвращает rowid строки, которая была недавно вставлена в базу данных dbhandle, если она была создана как поле с автоматическим приращением.
BLOCKQUOTE>
Он имеет last_insert_rowid()
Функция last_insert_rowid () возвращает ROWID последней вставки строки из соединения с базой данных, которое вызывало функцию
BLOCKQUOTE>
При использовании SQLite версии 3 с PDO SQLite, это может быть так:
$insert = "INSERT INTO `module` (`mid`,`description`) VALUES (
NULL,
:text
);
";
$stmt = $conn->prepare($insert);
$stmt->execute(array(':text'=> $text));
echo $conn->lastInsertId()
Это короткий метод C #, который работает для меня. Int32 достаточно большой для моих целей.
public static Int32 GetNextID( SqliteConnection AConnection )
{
Int32 result = -1;
using ( SqliteCommand cmd = AConnection.CreateCommand() )
{
cmd.CommandText = "SELECT last_insert_rowid();";
using ( SqliteDataReader r = cmd.ExecuteReader() )
{
if ( r.Read() )
result = (Int32) r.GetInt64( 0 );
}
}
return result;
}