当前位置: 首页>>代码示例>>C++>>正文


C++ AnsiString::Pos方法代码示例

本文整理汇总了C++中AnsiString::Pos方法的典型用法代码示例。如果您正苦于以下问题:C++ AnsiString::Pos方法的具体用法?C++ AnsiString::Pos怎么用?C++ AnsiString::Pos使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在AnsiString的用法示例。


在下文中一共展示了AnsiString::Pos方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: FileListCreator

//---------------------------------------------------------------------------
void FileListCreator(AnsiString TopDir, TStringList *SL, AnsiString Exts, bool SubFolder)
{
    void *Handle;
    TWin32FindData Data;
    Exts = UpperCase(Exts);
    Handle = FindFirstFile((TopDir + "\\*.*").c_str(), &Data);
    if (Handle == INVALID_HANDLE_VALUE) return;

    if (!((AnsiString(Data.cFileName) == ".") || (AnsiString(Data.cFileName) == ".."))){
        if (Exts.Pos(ExtractFileExt(Data.cFileName).UpperCase())){
            SL->Add(TopDir + "\\" + Data.cFileName);
        }

        if ((Data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) && SubFolder){
            FileListCreator(TopDir + "\\" + Data.cFileName, SL, Exts);
        }
    }

    while (FindNextFile(Handle, &Data)){
        if (!((AnsiString(Data.cFileName) == ".") || (AnsiString(Data.cFileName) == ".."))){
            if (Exts.Pos(ExtractFileExt(Data.cFileName).UpperCase())){
                SL->Add(TopDir + "\\" + Data.cFileName);
            }

            if ((Data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) && SubFolder){
                FileListCreator(TopDir + "\\" + Data.cFileName, SL, Exts);
            }
        }
    }

    FindClose(Handle);
}
开发者ID:hkameya,项目名称:Frieve-Editor,代码行数:33,代码来源:utils.cpp

示例2: CurCardLost

// это таймер приема данных
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
        char ch;
        DWORD temp;
        if (!ReadFile(hPort, &ch, 1, &temp, NULL)) return;    // читаем посимвольно
        if (ch!='\r') sRecString+=ch;                        // и ждем конца строки
        else
        {
                int index =sRecString.Pos("Card Out");  // пришло сообщение о извлечении карты
                if (index!=0)      // ну может имеет смысл это убрать все это. чтоб стабилнее работало
                {       mLog->Lines->Add("get Card Out");
                        CurCardLost();
                }
                index = sRecString.Pos("CurCard");    // CurCard - это префикс такой
                if (index==0)
                {
                       sRecString="";
                       return;
                }
                AnsiString sNewCardID;
                sNewCardID=sRecString.SubString(index+8,sRecString.Length()-index-7);
                sRecString="";
                if (sNewCardID!=lCurCardID->Caption) NewCardFound(sNewCardID);
                bGetCardFlag=true;
        }
}
开发者ID:Tokifuko,项目名称:all-my-projects,代码行数:27,代码来源:Unit1.cpp

示例3: ZnajdzTekstOpini

//---------------------------------------------------------------------------
/// Meotoda odpowiada za w³aœciwe wyszukiwanie danych opini, metoda przyjmuje znaczniki pocz¹tkowe oraz koñcowe,
/// pomiêdzy którymi znajduj¹ siê po¿¹dane teksty.
AnsiString __fastcall ParsujDane::ZnajdzTekstOpini(AnsiString &ATextOpini, AnsiString AZnacznikPocz, AnsiString AZnacznikKoniec, bool ATnij)
{
	AnsiString txt;
	int pozycjaZnacznik, start, koniec;
	pozycjaZnacznik = ATextOpini.Pos(AZnacznikPocz);
	if (pozycjaZnacznik == 0) return "";
	while (true)
	{
		txt += ATextOpini[pozycjaZnacznik];
		if (ATnij) { if (txt.Pos(AZnacznikPocz) > 0) { txt = txt.Delete(1, AZnacznikPocz.Length()); } }
		if (txt.Pos(AZnacznikKoniec) > 0) break;
		pozycjaZnacznik++;
	}
	if (!ATnij)
	{
		start = AZnacznikPocz.Length() + 1;
		koniec = txt.Length() - AZnacznikPocz.Length() - AZnacznikKoniec.Length();
	}
	else
	{
		start = 1;
		koniec = txt.Length() - AZnacznikKoniec.Length();
	}
	txt = txt.SubString(start, koniec);
	txt.TrimLeft(); txt.TrimRight();
	return txt;
}
开发者ID:godzillaq,项目名称:Proces_ETL,代码行数:30,代码来源:UParsuj.cpp

示例4: QDialog

ConnectDialog::ConnectDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::ConnectDialog) {
    ui->setupUi(this);
    setWindowIcon(QIcon(QString::fromUtf8(":/resources/conceptclienticon.png")));
    ui->label->setBuddy(ui->addressEdit);

    QStringList wordList;

    AnsiString history;
#ifdef _WIN32
    h_path = getenv("LOCALAPPDATA");
    if (!h_path.Length())
        h_path = getenv("APPDATA");

    mkdir(h_path + "/ConceptClient-private");
    h_path += (char *)"/ConceptClient-history.dat";
#else
    h_path = getenv("HOME");
    mkdir(h_path + "/.ConceptClient-private", 0777L);

    h_path += (char *)"/.ConceptClient-history";
#endif
    history.LoadFile(h_path.c_str());

    this->history = history;

    AnsiString sep     = "\n";
    int        len_sep = sep.Length();

    int pos   = history.Pos(sep);
    int index = 0;
    int start = 0;
    while (pos > 0) {
        if (pos > 1) {
            history.c_str()[pos - 1] = 0;
            wordList << history.c_str();
        }
        AnsiString temp = history;
        history = temp.c_str() + pos + len_sep - 1;
        pos     = history.Pos(sep);
    }

    QCompleter *completer = new QCompleter(wordList);
    completer->setCaseSensitivity(Qt::CaseInsensitive);

    ui->addressEdit->setCompleter(completer);

    ui->addressEdit->setText(QString::fromUtf8("concept://"));
    ui->addressEdit->addAction(QIcon(QString::fromUtf8(":/resources/gtk-index.png")), QLineEdit::LeadingPosition);
    QAction *action = ui->addressEdit->addAction(QIcon(QString::fromUtf8(":/resources/gtk-delete.png")), QLineEdit::TrailingPosition);

    QStyle *l_style = QApplication::style();

    ui->OkButton->setIcon(l_style->standardIcon(QStyle::SP_DialogOkButton));
    ui->CancelButton->setIcon(l_style->standardIcon(QStyle::SP_DialogCancelButton));

    QObject::connect(action, SIGNAL(triggered()), this, SLOT(clearHistory()));
}
开发者ID:Devronium,项目名称:ConceptClientQT,代码行数:59,代码来源:connectdialog.cpp

示例5: GetStrWithReplacedPoints

//---------------------------------------------------------------------------
AnsiString GetStrWithReplacedPoints(AnsiString Str, AnsiString PointStr=GetPointStr())
{
  AnsiString RetStr;
  int posPoint=Str.Pos(",");
  if (posPoint>0) RetStr=Str.SubString(1,posPoint-1)+PointStr+Str.SubString(posPoint+1,Str.Length()-posPoint);
  posPoint=Str.Pos(".");
  if (posPoint>0) RetStr=Str.SubString(1,posPoint-1)+PointStr+Str.SubString(posPoint+1,Str.Length()-posPoint);
  return RetStr;
}
开发者ID:txe,项目名称:ieml,代码行数:10,代码来源:UnitFormDLL.cpp

示例6: IsFileNameOrURL

//---------------------------------------------------------------------------
bool IsFileNameOrURL(AnsiString S)
{
    if (S.Pos(":\\")){
        //ファイル(ルートフォルダのあるもの)
        return true;
    }else if (S.Pos("\\\\")){
        //ネットワーク上のファイル?
        return true;
    }else if (S.Pos("://")){
        //URL
        return true;
    }
    return false;
}
开发者ID:hkameya,项目名称:Frieve-Editor,代码行数:15,代码来源:utils.cpp

示例7: tcpServerExecute

void __fastcall TfrmMain::tcpServerExecute(TIdPeerThread *AThread)
{
  TSimpleClient *Client;
  AnsiString Com;     // System command
  AnsiString Msg;

//Get the text sent from the client
try
{
  Msg    = AThread->Connection->ReadLn("",5000);
}
catch (...)
{

}
  // Get the clients package info
if (Msg.Length()==0)return;
  Client = (TSimpleClient *)(AThread->Data);
// Check to see if the clients name has been assigned yet
  if (Client->Name == "Logging In")
   {
   //  if not, assign the name and announce the client
      Client->Name = Msg;
      UpdateClientList();
      BroadcastMessage("System", Msg + " has just logged in.");
      AThread->Connection->WriteLn(memEntry->Lines->Text);
   }
  else
  // If name is set, then send the message
  if (Msg[1] != '@')
    {
    // Not a system command
      BroadcastMessage(Client->Name, Msg);
    }
  else
    {
    // System command
      Com = UpperCase(Trim(Msg.SubString(2, Msg.Pos(":") -2)));
      Msg = UpperCase(Trim(Msg.SubString(Msg.Pos(":") +1, Msg.Length())));
      if (Com == "CLIENTS")
     AThread->Connection->WriteLn( AnsiString("@") + AnsiString("clients:") +
                 lbClients->Items->CommaText);

     if (Com == "KILL")
        KillClient(Msg);
    }


}
开发者ID:java-tester-x,项目名称:SendFileHttp,代码行数:49,代码来源:ServerFrm.cpp

示例8: ZnajdzDane

//---------------------------------------------------------------------------
/// Metoda odpowiada za znalezienie danych w przekazanym tekœcie, szukany tekst musi znajdowaæ siê pomiêdzy
/// pocz¹tkowym znacznikiem a znakiem wystêpuj¹cym na koñcu tekstu, w przypadku nie znalezienie znacznika pocz¹tkowego
/// metoda zwraca pusty tekst.
AnsiString __fastcall ParsujDane::ZnajdzDane(AnsiString &AText, AnsiString AZnacznikPocz, char AZnakKonca)
{
	int pozycjaZnacznik, start, koniec;
	AnsiString tekst, str = "";
	pozycjaZnacznik = AText.Pos(AZnacznikPocz);
	start = pozycjaZnacznik;
	if (pozycjaZnacznik == 0) return "";
	pozycjaZnacznik = pozycjaZnacznik + AZnacznikPocz.Length();

	while(AText[pozycjaZnacznik] != AZnakKonca)
	{
		str += AText[pozycjaZnacznik];
		pozycjaZnacznik++;
		if ((AText[pozycjaZnacznik] == ']' && AText[pozycjaZnacznik - 1] != '\"') ||
		(AText[pozycjaZnacznik] == '\"' && AText[pozycjaZnacznik - 1] == '\\'))
		{
            str += AText[pozycjaZnacznik];
			pozycjaZnacznik++;
		}
	}
	koniec = pozycjaZnacznik;
	AText.Delete(start,  koniec + 1 - start);
	str.TrimLeft(); str.TrimRight();
	return str;
}
开发者ID:godzillaq,项目名称:Proces_ETL,代码行数:29,代码来源:UParsuj.cpp

示例9: ConvertPathCygwinToWindows

AnsiString GenericUtils::ConvertPathCygwinToWindows(AnsiString original){
    //In case of source path I have to fix the Drive letter as well

    if(original.Length() > 11 && original.Pos("/cygdrive/") == 1){
        AnsiString driveLetter = original[11];
        original = driveLetter + ":\\" + original.SubString(13, original.Length());
    }

    AnsiString answer;
    //This loop fixes the spaces
    for(int i = 1; i <= original.Length(); i++){
        if(i != original.Length() && original[i] == '\\' && original[i + 1] == ' '){
            answer += ' ';
            i++;      //Skip the next character since it is a space
        }else{
            answer += original[i];
        }
    }

    //Now fix the back slashes
    for(int i = 1; i <= answer.Length(); i++){
        if(answer[i] == '/'){
            answer[i] = '\\';
        }
    }
    return answer;
}
开发者ID:AndyHuang7601,项目名称:EpicGames-UnrealEngine,代码行数:27,代码来源:GenUtils.cpp

示例10: FormShow

//---------------------------------------------------------------------------
void __fastcall TfrmClimateAM::FormShow(TObject *Sender)
{
  int cant=AnsiString(condTemp->FileName).Length();
  if (cant==0)
  {
  }
  else
  {
    int existe=access(condTemp->FileName, 0);
    if(existe==-1) // el archivo no existe
    {
      Application->MessageBox("The specified file does not exist!!!","¡Advertencia!",MB_OK);
      return;
    }
    else
    {
      FileData *util=new FileData();
      AnsiString nombre = AnsiString(condTemp->FileName);
      int posicion=nombre.Pos(".");
      int longitud=nombre.Length();
      int caract=longitud-posicion;
      AnsiString ext=nombre.SubString(posicion+1,caract);
      if(ext=="prn") num=util->GetFieldsName(List,condTemp->FileName);
      if(ext=="csv") num=util->GetFieldsNameFromCSVFile(List,condTemp->FileName);
      delete util;
    }
  }
  PutValuesOnForm();
}
开发者ID:gcucho,项目名称:solanum,代码行数:30,代码来源:UClimateAM.cpp

示例11: UsunZnacznik

//---------------------------------------------------------------------------
/// Metoda odpowiedzialna za usunieciê przekazanych znaczników z przekazanego tekstu,
/// metoda umo¿liwia umieszczenie znacznika konca lini w zamian za przyjmowany znacznik
void __fastcall ParsujDane::UsunZnacznik(AnsiString &AText, AnsiString AZnacznik, bool AWstawENDL)
{
	int pozycjaZnacznik, i;
	i = 0;
	while (true)
	{
		pozycjaZnacznik = AText.Pos(AZnacznik);
		if (AZnacznik == ' ')
		{
			if (AText.Pos(' ') > 1) break;
		}
		if (pozycjaZnacznik > 0) AText.Delete(pozycjaZnacznik, AZnacznik.Length());
		if (pozycjaZnacznik > 0 && AWstawENDL) AText.Insert("<ENDL>",pozycjaZnacznik);
		if (pozycjaZnacznik == 0) break;
	}
	AText.TrimLeft(); AText.TrimRight();
}
开发者ID:godzillaq,项目名称:Proces_ETL,代码行数:20,代码来源:UParsuj.cpp

示例12: StrToIntEx

int  __fastcall TThreadSubmitToDB::GetRowsForSQLLDR(const AnsiString  & Text)
{
  int Result = -1;
  if(Text.Pos(SQLLDR_KEY_WORD1) > 0)
  {
    Result = StrToIntEx(Text.SubString(strlen(SQLLDR_KEY_WORD1) + 1,Text.Length() - strlen(SQLLDR_KEY_WORD1) + 1).c_str());
  }
  return Result;

}
开发者ID:josecohenca,项目名称:xmlconvertsql,代码行数:10,代码来源:ThreadSubmitToDB.cpp

示例13: while

//---------------------------------------------------------------------------
TStringList * __fastcall TForm1::Parse(AnsiString str ,AnsiString delimeter)
{
        TStringList *list = new TStringList ;
	int pos = str.Pos(delimeter);
        if(pos<=0)
        {
		list->Add(str);//no delimeter so only this
                return list ;
        }
        while(pos >0)
        {
		AnsiString unit = str.SubString(1,pos-1);
                str = str.SubString(pos+1,str.Length()-pos);
                list->Add(unit);
                pos =  str.Pos(delimeter);

        }
        return list ;
}
开发者ID:tianfengjingjing,项目名称:C-BuilderGame,代码行数:20,代码来源:Unit1.cpp

示例14: KeyPressDbl

void __fastcall TfrmPropVisor::KeyPressDbl(TObject *Sender, char &Key)
{
  AnsiString s;
  s = ((TEdit*)Sender)->Text;
  bool Num = ((Key >= '0') && (Key <= '9'));
  bool Dec = ((Key == DecimalSeparator) && (s.Pos(DecimalSeparator) == 0));
  //bool Neg = ((Key == '-') && (((TEdit*)Sender)->SelStart == 0) && (s.Pos('-') == 0));
  if( !Num && !Dec /*&& !Neg*/ )
    Key = 0;
}
开发者ID:clubdesarrolladores,项目名称:maxmath,代码行数:10,代码来源:fPropVisor.cpp

示例15: GetStrName

//用空格或者'-'分割字符串,取后部分。
AnsiString GetStrName(AnsiString AStr)
{
    AnsiString IName;
    int IPos;
    IPos = AStr.Pos("-");
    if(IPos == 0)
    {
    	IPos = AStr.Pos(" ");
    	if(IPos == 0)
    	{
    		IName = "";
    	}
    	else
    	{
    		IName = AStr.SubString(IPos + 1, AStr.Length());
    	}	
    }
    else
    {
    	IName = AStr.SubString(IPos + 1,AStr.Length());
    }
    return IName;
}
开发者ID:debugfan,项目名称:CodeNote,代码行数:24,代码来源:Const.cpp


注:本文中的AnsiString::Pos方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。