Обработка текстовой информации средством языка JAVA

 














Курсовая работа

Обработка текстовой информации средством языка JAVA


ВВЕДЕНИЕ

программирование java редактор

Для начала разберемся что такое «Java», когда он был создан и кем, для чего он нужен, какие возможности имеет Java, ну и наконец, как можно обработать текст c помощью него.

Java является языком программирования, он был разработан в компаний «Sun Microsystems», затем было куплена «Java» компанией Оracle. Основная черта Java - переносимость. Изначально Java разрабатывался согласно принципу WORA: Write Once - Run Anywhere. Исходный код компилируется в байт-код, который исполняется виртуальной машиной. Программа, написанная на Java и откомпилированная в байт-код, может без изменений быть перенесена на любую ОС, где есть виртуальная машина Java.

Приложение «Java» была официально доступно 23 мая 1995 года. Что означала начало всех созданных приложении с помощью JAVA. И каждый мог создавать свою собственную программу, приложение, и т.д.

Тема была разделена для лучшего понимание на четыре составные:

Java

Текстовая информация

Обработка строки

Java Основные Задачи


1. ВОЗНИКНОВЕНИЕ «Java»


Создателем языка программирование с помощью приложение «Java» является Джеймс Гослинг. Джеймсон Гослинг говорил что создавал продукт который поможет написать программу для бытовых электронных устройств.

Однажды Джеймс сидел все размышлял, какое же название дать своему приложение или редактору, напротив него было открыто окно, он посмотрел и увидел дуб, так появилось первое название «Оак» что в переводе с английского означает «Дуб». Затем дали название «Java» который был создан для написания любых приложение, а также серверного ПО(программное обеспечение).

Так откуда появилось название Java? Ответ на этот вопрос был очень прост, как ни странно, названо было в честь знаменитой марки кофе Java, которая, получила название одноимённого острова (Ява) где изготавливали кофе. Вот откуда появилась такая эмблема, где изображено чашка с парящим кофе.



. JAVA


В Java самым важным является JVM(JavaVirtualMachine). Так как без JVM код, написанный просто, текст, который понимаем мы с вами, но не компьютер. Ему нужно объяснить прицепом бинарных кодов.

JVM - это программа, которая обрабатывает байтовые коды, передающие в инструкции оборудования как интерпретатор. Программы написанные с помощью Java могут быть выполняемы виртуальной машиной Java (JVM). Плюсом JVM является, полная независимость байтовых кодов от ОС и оборудования, поэтому данный продукт Java выполняется на любом устройстве, где присутствует соответствующая виртуальная машина.

Другой важной особенностью технологии Java является гибкая система безопасности благодаря тому, что исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером) вызывают немедленное прерывание.

Часто к недостаткам концепции виртуальной машины относят то, что исполнение байт-кода виртуальной машиной может снижать производительность программ и алгоритмов, реализованных на языке Java. В последнее время был внесен ряд усовершенствований, которые несколько увеличили скорость выполнения программ на Java:

·применение технологии трансляции байт-кода в машинный код непосредственно во время работы программы (JIT <#"justify">Тесная интеграция Java с DCOM и Win32 ломала многоплатформенную суть языка. Впоследствии это явилось поводом для судебных исков со стороны Sun Microsystems к Microsoft. Суд принял сторону компании Sun Microsystems. В конечном счёте между двумя компаниями была достигнута договорённость о возможности продления срока официальной поддержки пользователей нестандартной Microsoft JVM до конца 2007 года, но не более.


. ТЕКСТОВАЯ ИНФОРМАЦИЯ


Несмотря на широкие возможности использования компьютеров для обработки самой разной информации, самыми популярными по-прежнему остаются программы, предназначенные для работы с текстом. При подготовке текстовых документов на компьютере используются три основные группы операций:

Операции ввода позволяют перенести исходный текст из его внешней формы в электронный вид, то есть в файл, хранящийся на компьютере. Ввод может осуществляться не только набором с помощью клавиатуры, но и путем сканирования бумажного оригинала и последующего перевода документа из графического формата в текстовый (распознавание).

Операции редактирования (правки) позволяют изменить уже существующий электронный документ путем добавления или удаления его фрагментов, перестановки частей документа, слияния нескольких файлов, разбиения единого документа на несколько более мелких и т.д.

Ввод и редактирование при работе над текстом часто выполняются параллельно. При вводе и редактировании формируется содержание текстового документа.

Оформление документа задают операциями форматирования. Команды форматирования позволяют точно определить, как будет выглядеть текст на экране монитора или на бумаге после печати на принтере.

Программы, предназначенные для обработки текстовой информации, называют текстовыми редакторами.

Все многообразие современных текстовых редакторов условно можно разбить на три основные группы:

. Изначально когда вы установили ОС(Windows) то вам дается обычный стандартный пакет, но часто бывает что и полный пакет майкрософт офис. Вот как раз именно тот самый не нужный нам для всех пользователей блокнот, WordPad, и множество похожих редакторов, такие как Atlantis, EditPad, AditorPro, Gedit и т.д. Ограниченные возможности по обработки текстов, как известно они все работаю с расширением .txt. Из-за своей простоты, ими нельзя прилично по своему вкусу форматировать объемный текст. Кстати что касается программирование многие преподаватели советуют печатать программный код именно на этих вот самых простых и менее функциональных текстовых редакторов, так в действительности лучше запоминается все методы, функции, и т.д.

. Промежуточный класс текстовых редакторов включает в себя достаточно широкие возможности по части оформления документов. Они работают со всеми стандартными текстовыми файлами(TXT, RTF, DOC). К таким программам можно отнести Microsoft Works, Лексикон.

. К третьей группе относятся мощные текстовые процессоры, такие, как Microsoft Word или StarOffice Writer. Они выполняют практически все операции с текстом. Большинство пользователей использует именно эти редакторы в повседневной работе.

Основными функциями текстовых редакторов и процессоров являются:

возможность ввода и удаление или изменение символа в тексте;

изменение размера шрифта, использования различных шрифтов символов;

копирование и перенос части текста с одного места на другое или из одного документа в другой;

контекстный поиск и замена частей текста;

задание произвольных параметров абзацев и шрифтов;

автоматический перенос слов на новую строку;

автоматическую нумерацию, обработка и нумерация сносок;

создание таблиц и построение диаграмм;

проверка правописания слов и подбор синонимов;

построение оглавлений и предметных указателей;

распечатка подготовленного текста на принтере и т.п.

Также практически все текстовые процессоры обладают следующими функциями:

поддержка различных форматов документов;

многооконность, т.е. возможность работы с несколькими документами одновременно;

вставка и редактирование формул;

автоматическое сохранение редактируемого документа;

работа с многоколоночным текстом;

возможность работы с различными стилями форматирования;

создание шаблонов документов, анализ статистической информации.

Сегодня практически все мощные текстовые редакторы входят в состав интегрированных программных пакетов, предназначенных для нужд современного офиса. Так, например, Microsoft Word входит в состав самого популярного офисного пакета Microsoft Office. Аналогичные MS Office.


. ОБРАБОТКА СТРОКИ


Строка - это ряд <#"255" src="doc_zip2.jpg" />


Пример 2.

Используем String , где уже будет написан Привет Мир!



. МЕТОДЫ В КЛАССЕ STRING

length() - показывает длину строки, точнее возвращает число Int;

например, нам нужно узнать, сколько количество букв в слове, для этого мы используем данный метод:


indexOf(char ch) - показывает под каким индексом стоит выбранный символ в строке, возвращает число Int;

Далее буду показывать только ту основную часть кода с применением данных методов.( т.е. все что записано в Main);


toUpperCase() - данная операция делает все символы в строке прописными.



String toLowerCase() - выполняет обратное действие, т.е. все прописные в строчные.


replace(char с1, char с2) - делает замену символа с1 на с2;trim() - выполняет операцию избавление пробелов в начале и конце строки.charAt(int position) - операция чтобы узнать под каким индексом находится символ( важно отметить что нумерация в Java происходить с нуля).isEmpty() - проверяет на наличие пустой строки, т.е. TRUE если пустая строка, FALSE если хоть один символ есть;

Во всех случаях вызова методов, изменяющих строку, создается новый объект типа String.

String substring(int position) - операция чтобы вырезать определенный часть текста, int position означает то что именно с этого числа берет за началу отрезка и до конца строки.

String substring(int position, int position1) - так же вырезает часть определенного текста, но уже зафиксированные координаты, точнее можно выбрать какой отрезок нужно вырезать и в дальнейшем им пользоваться.

Int compareTo(String second) - данный метод очень удобен, если нужно сравнивать две совсем разные слова, если первое слово больше то метод возвращает значение +10, если второе больше то возвращает -10, ну и когда они оба равны то возвращает значение равной нулю.nextLine() - это метод, который возвращает целую строчку.

6. JAVA ОСНОВНЫЕ ЗАДАЧИ ПО ОБРАБОТКЕ ТЕКСТА


-найти нужный символ, нужные слова или текст;

-заменить или удалить символ, слова или текст;

-написание текста прописными или строчными;

-написание текста в лексикографическом порядке.

Для того чтоб нам было легко работать с текстом, скорее все было лучше все хранить в массиве, если текст объемный, ну и с массивами легче работать, достать или заменить под определенным индексом хранится символ или слово.

Массив (в некоторых языках программирования <#"justify">Теперь на Паскале

PASCALi:integer;massiv:array[1..5] of integer;i:=1 to 5 do[i]:=i;i:=1 to 5 do(massiv[i]);.

Результатом вывода будет следующее







Задан текст, состоящий из строк произвольной длины. Строки разделяются одним или несколькими символами, называются разделителями. Разделители одинаковы для всего текста. Текст заканчивается комбинацией двух специальных символов, отличительных от разделителя. Выполнить над текстом последовательные действий, указанную в задании.

)Определить количество строк; (немного усложнил себе задание, сделал чтоб не строки считал, а сколько слов в тексте)

)Сформировать новый текст, в котором строки упорядочены в лексикографическом порядке.

)Определить количество вхождений для каждого символа, который встречался хотя бы один раз;


import java.util.Scanner;java.io.File;class Zadanie1{static void main(String args[])throws Exception{in = new Scanner(new File("TEXT.txt"));str = in.nextLine();counter=0,counter2 = 0;(int i = 0;i<str.length();i++){(str.charAt(i)==' ' || str.charAt(i)=='.' || str.charAt(i)==','){(str.substring(i-counter2,i).length()>=3)++;

}else counter2++;

}.out.println("Количество слов в тексте: "+counter);

}

}

public class Zadanie2{

public static void main(String args[])throws Exception{in =new Scanner(new File("TEXT.txt"));text = in.nextLine();slova[] = new String[text.length()];result=0, result2 = 0; int counter=0,counter2 = 0;(int i = 0;i<text.length();i++){(text.charAt(i)==' ' || text.charAt(i)=='.' || text.charAt(i)==','){ [counter] = text.substring(counter2,i);=i+1;counter++; }

}zamena = "", str1 = "", str2 = "";(int i = 0;i<counter;i++){(int j = i;j<counter-1;j++){= slova[i]; str2 = slova[j+1];= str1.compareTo(slova[j+1]);= str2.compareTo(slova[i]);(result<result2) zamena = slova[i];{ zamena = slova[i]; slova[i]=slova[j+1];

slova[j+1]=zamena;

}

}

}}

import java.util.Scanner;java.io.File;class Zadanie3{static void main(String args[])throws Exception{in =new Scanner(new File("TEXT.txt"));text = in.nextLine();[] c = new int[91];check = 0;(int i = 65;i<91;i++){(int j = 0;j<text.length();j++){= (int)text.charAt(j);(check==i)c[i]=c[i]+1;

}}(int i = 65;i<91;i++){ch = (char)c[i];.out.print("Буква "/"+ch+"/" встречается: "+c[i]+" ");

}

}

}


7. ЛЕКСИЧЕСКИЙ АНАЛИЗ ТЕКСТА


Когда мы используем методы из класса String, и меняем там содержимое, то в памяти компьютера создается новый объект этого же класса. Сохранить изменения в объекте класса String можно только с применением оператора присваивания, т.е. установкой ссылки на этот новый объект.

Класс StringTokenizer содержит методы, позволяющие разбивать текст на лексемы, отделяемые разделителями. Набор разделителей по умолчанию: пробел, символ табуляции, символ новой строки, перевод каретки. В задаваемой строке разделителей можно указывать другие разделители, например «= , ; : ».

Класс StringTokenizer имеет конструкторы:(String str);(String str, String delimiters);(String str, String delimiters,delimAsToken);

Парочка методов:nextToken() - метод который возвращает объект.

boolean hasMoreTokens() - если строка имеет хоть один символ, то этот метод возвращает TRUE.сountToken() - что на подобие счетчика, количество символов.

Что насчет истории то это версия класса была создана когда была написана первая версия приложения JAVA для создания программ и приложения. Но не стоит забывать, что в наше время существует куда более мощные версии, где однозначно много функциональности и стабильности, более интересные возможности по обработке текстовой информации.


ЗАКЛЮЧЕНИЕ


Изучая данную тему, я вспомнил то, что проходил года 3 назад, особенно как я мучился при написании кодов на обычном блокноте, но благодаря этому хорошо запомнились все операции, методы, и написание конструкторов в Java. Данная тема хорошо иллюстрирует, то что именно большой толчок в области программирование дал приложение Java которая изначально создавался для написание программ бытовых оборудования. По моему сравнению Java является более упрошенная в пользование написание кодов чем остальные редакторы, такие как Pascal, хотя я его изучил совсем мало, но замучился уже через час.

Несмотря на всю свою сложность, приложение JAVA установлено более 3 млр. устройств, и это число растет.

Множество компаний вдохновило приложение JAVA, так как можно было добавить собственный язык, который мог считываться виртуальной машиной, которые в дальнейшем будут использованы для создания программ. Эти идеи нашли также выражение в спецификации общеязыковой инфраструктуры CLI <http://ru.wikipedia.org/wiki/Common_Language_Infrastructure>, заложенной в основу платформы .NET <http://ru.wikipedia.org/wiki/.NET_Framework> компанией Microsoft <http://ru.wikipedia.org/wiki/Microsoft>.

Данная тема объемная, интересная и познавательная, я извлек много полезного.


СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ


1.Васильев А.Н. C#. Объектно-ориентированное программирование - 2012г. - 315 с.

.Веретенникова Е.Г., Патрушина С.М, Савельева Н.. Информатика 2008. - 412 с.

.Голицына О.Л., Программирование на языках высокого уровня; учеб. пособие.2013. - 495 с.

.Меняев М.Ф., Информатика и основы программирования, 2010г.,464с.

.Орлов С.А., Цилькер Б.Я. Технологии разработки программного обеспечения. Современный курс по программной инженерии, 2012. - 608 с..

.Пышкин Е.В. Основные концепции и механизмы объектно-ориентированного программирования учеб. Пособие. 2009. - 628 с.

.Симонович С.В, Евсеев Г.А, Алексеев А.Г., Специальная информатика, 2009. - 479 с.

. Симонович С.В., Информатика. Базовый курс 2011. - 638 с.

.Росс Г.В, Дулькин В.Н, Сысоева Л.А.Основы информатики и программирования 2010г.- 160 с.


Курсовая работа Обработка текстовой информации средством языка JAVA ВВЕДЕНИЕ программирование j

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ