500 줄 이상으로 문서의 줄 순서를 뒤집고 싶습니다. 줄은 단순한 숫자가 아니라 일부는 텍스트와 다른 문자를 포함합니다. 믹스입니다.
예:
1 호선 2 호선 3 호선 4 호선 5 호선 6 호선
그런 다음 뒤집고 뒤집고 아래에서 위로 보이기를 원합니다.
6 호선 5 호선 4 호선 3 호선 2 호선 1 호선
500 줄 이상으로 문서의 줄 순서를 뒤집고 싶습니다. 줄은 단순한 숫자가 아니라 일부는 텍스트와 다른 문자를 포함합니다. 믹스입니다.
예:
1 호선 2 호선 3 호선 4 호선 5 호선 6 호선
그런 다음 뒤집고 뒤집고 아래에서 위로 보이기를 원합니다.
6 호선 5 호선 4 호선 3 호선 2 호선 1 호선
답변:
일반적으로 포함 된 TextFX 플러그인을 제외한 다른 소프트웨어가 필요하지 않은 솔루션 :
TextFX 플러그인없이 메모장 ++에서도 가능합니다. 허용 된 답변과 동일한 전략이지만 기본 기능을 사용합니다. 다음과 같이 수행됩니다.
글쎄, 우리는 코드 예제를 제공하기 때문에 Windows 7에 있거나 다른 Windows 버전에 PowerShell을 설치 한 경우 다음을 수행하십시오.
$foo = New-Object System.collections.arraylist;
$foo.AddRange($(Get-Content 'C:\Path\To\File.txt));
$foo.Reverse();
$foo | Out-File C:\Path\To\File.txt
또는 비 코딩 답변의 경우 gVim을 다운로드 하고 파일을 열고 다음을 입력하십시오.
:g/^/m0
C ++을 컴파일하는 것이 편하다면 트릭을 수행해야합니다. 기본적으로 파일의 각 줄을 벡터에 넣고 역 반복자를 사용하여 새 파일로 출력합니다.
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
int main()
{
std::vector<std::string> fileLines;
std::string currLine;
std::ifstream inFile("input.txt");
if (inFile.is_open())
{
while (inFile.good())
{
std::getline(inFile, currLine);
fileLines.push_back(currLine);
}
inFile.close();
}
else
{
std::cout << "Error - could not open input file!\n";
return 1;
}
std::ofstream outFile("output.txt");
if (outFile.is_open())
{
std::vector<std::string>::reverse_iterator rIt;
for (rIt = fileLines.rbegin(); rIt < fileLines.rend(); rIt++)
{
outFile << *rIt;
}
outFile.close();
}
else
{
std::cout << "Error - could not open output file!\n";
return 1;
}
return 0;
}
출력 파일은 줄 사이에 줄 바꿈이없는 경우, 다음을 변경 outFile << *rIt;
수 outFile << *rIt << "\r\n";
(생략 소위 줄 바꿈이 추가 \r
유닉스 / 리눅스 인 경우)를.
면책 조항 :이 코드를 테스트하지는 않았지만 (메모장에서 빨리 작성했습니다) 실행 가능한 것으로 보입니다.
클릭 한 번으로 사용할 수있는 온라인 도구를 사용하십시오.
웹 사이트 http://textmechanic.co/Sort-Text-Lines.html 에서 온라인으로 할 수 있습니다
방금 작성한 C # .NET 코드는 다음과 같습니다. :)
class Program
{
static void Main(string[] args)
{
try
{
String line;
Stack<String> lines = new Stack<string>();
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
using (StreamReader sr = new StreamReader("test.txt"))
{
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
lines.Push(line);
}
// Create a writer and open the file
TextWriter tw = new StreamWriter("test2.txt");
// Write a line of text to the file
while (lines.Count > 0)
tw.WriteLine(lines.Pop());
// close the stream
tw.Close();
}
catch (Exception e)
{
// Let the user know what went wrong.
Console.WriteLine("The file could not be read/written:");
Console.WriteLine(e.Message);
}
}
}
unsafe
키워드 가 필요한 이유는 무엇 Main
입니까?
비 코딩 방식은 다음과 같습니다.
한 번의 클릭으로 메모장 ++에서 이것을 자동화하려면 다음을 수행하십시오.
상황에 맞는 메뉴에 추가하려면 :
플러그인 탭 → Python Script → Configuration 을 클릭 하면 툴바 아이콘 또는 Python Script 메뉴 자체에 스크립트를 할당 할 수 있습니다. (메뉴에 스크립트를 할당하면 바로 표시되지만 다음에 메모장 + +가 시작될 때까지 바로 가기를 할당 할 수 없습니다. 도구 모음 아이콘에 할당하면 해당 메뉴에만 표시됩니다. 메모장 ++의 다음 시작.)